pokerogue/src/phases.ts

5848 lines
227 KiB
TypeScript
Raw Normal View History

import BattleScene, { bypassLogin } from "./battle-scene";
2024-03-01 01:08:50 +00:00
import { default as Pokemon, PlayerPokemon, EnemyPokemon, PokemonMove, MoveResult, DamageResult, FieldPosition, HitResult, TurnMove } from "./field/pokemon";
import * as Utils from "./utils";
[Move] Implement Shell Trap (#3500) * Implement Shell Trap * Fix error in EN message * Add ZH/KO translations Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Fix error in placeholder messages * FR translation / KO translation fix Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> * More translations (DE, ES, IT, PT-BR) Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ja/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Fix Shell Trap activating from ally attacks (+ test fixes) * Remove todo + add test with shell trap as first move --------- Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br>
2024-08-13 20:47:05 +00:00
import { allMoves, applyMoveAttrs, BypassSleepAttr, ChargeAttr, applyFilteredMoveAttrs, HitsTagAttr, MissEffectAttr, MoveAttr, MoveEffectAttr, MoveFlags, MultiHitAttr, OverrideMoveEffectAttr, MoveTarget, getMoveTargets, MoveTargetSet, MoveEffectTrigger, CopyMoveAttr, AttackMove, SelfStatusMove, PreMoveMessageAttr, HealStatusEffectAttr, NoEffectAttr, BypassRedirectAttr, FixedDamageAttr, PostVictoryStatChangeAttr, ForceSwitchOutAttr, VariableTargetAttr, IncrementMovePriorityAttr, MoveHeaderAttr, MoveCategory } from "./data/move";
import { Mode } from "./ui/ui";
2023-04-10 18:12:01 +00:00
import { Command } from "./ui/command-ui-handler";
2023-04-20 19:46:05 +00:00
import { Stat } from "./data/pokemon-stat";
import { BerryModifier, ContactHeldItemTransferChanceModifier, EnemyAttackStatusEffectChanceModifier, EnemyPersistentModifier, EnemyStatusEffectHealChanceModifier, EnemyTurnHealModifier, ExpBalanceModifier, ExpBoosterModifier, ExpShareModifier, ExtraModifierModifier, FlinchChanceModifier, HealingBoosterModifier, HitHealModifier, LapsingPersistentModifier, MapModifier, Modifier, MultipleParticipantExpBonusModifier, PokemonExpBoosterModifier, PokemonHeldItemModifier, PokemonInstantReviveModifier, SwitchEffectTransferModifier, TurnHealModifier, TurnHeldItemTransferModifier, MoneyMultiplierModifier, MoneyInterestModifier, IvScannerModifier, LapsingPokemonHeldItemModifier, PokemonMultiHitModifier, overrideModifiers, overrideHeldItems, BypassSpeedChanceModifier, TurnStatusEffectModifier, PokemonResetNegativeStatStageModifier } from "./modifier/modifier";
2023-04-11 15:04:39 +00:00
import PartyUiHandler, { PartyOption, PartyUiMode } from "./ui/party-ui-handler";
2023-07-04 21:50:51 +00:00
import { doPokeballBounceAnim, getPokeballAtlasKey, getPokeballCatchMultiplier, getPokeballTintColor, PokeballType } from "./data/pokeball";
2023-04-20 19:46:05 +00:00
import { CommonAnim, CommonBattleAnim, MoveAnim, initMoveAnim, loadMoveAnimAssets } from "./data/battle-anims";
2023-05-19 20:13:11 +00:00
import { StatusEffect, getStatusEffectActivationText, getStatusEffectCatchRateMultiplier, getStatusEffectHealText, getStatusEffectObtainText, getStatusEffectOverlapText } from "./data/status-effect";
2023-04-10 18:12:01 +00:00
import { SummaryUiMode } from "./ui/summary-ui-handler";
import EvolutionSceneHandler from "./ui/evolution-scene-handler";
import { EvolutionPhase } from "./evolution-phase";
import { Phase } from "./phase";
2023-04-20 19:46:05 +00:00
import { BattleStat, getBattleStatLevelChangeDescription, getBattleStatName } from "./data/battle-stat";
import { biomeLinks, getBiomeName } from "./data/biomes";
import { ModifierTier } from "./modifier/modifier-tier";
import { FusePokemonModifierType, ModifierPoolType, ModifierType, ModifierTypeFunc, ModifierTypeOption, PokemonModifierType, PokemonMoveModifierType, PokemonPpRestoreModifierType, PokemonPpUpModifierType, RememberMoveModifierType, TmModifierType, getDailyRunStarterModifiers, getEnemyBuffModifierForWave, getModifierType, getPlayerModifierTypeOptions, getPlayerShopModifierTypeOptionsForWave, modifierTypes, regenerateModifierPoolThresholds } from "./modifier/modifier-type";
2023-04-12 23:09:15 +00:00
import SoundFade from "phaser3-rex-plugins/plugins/soundfade";
import { BattlerTagLapseType, CenterOfAttentionTag, EncoreTag, ProtectedTag, SemiInvulnerableTag, TrappedTag } from "./data/battler-tags";
import { getPokemonNameWithAffix } from "./messages";
import { Starter } from "./ui/starter-select-ui-handler";
2023-04-20 19:46:05 +00:00
import { Gender } from "./data/gender";
import { Weather, WeatherType, getRandomWeatherType, getTerrainBlockMessage, getWeatherDamageMessage, getWeatherLapseMessage } from "./data/weather";
import { ArenaTagSide, ArenaTrapTag, ConditionalProtectTag, MistTag, TrickRoomTag } from "./data/arena-tag";
import { CheckTrappedAbAttr, PostAttackAbAttr, PostBattleAbAttr, PostDefendAbAttr, PostSummonAbAttr, PostTurnAbAttr, PostWeatherLapseAbAttr, PreSwitchOutAbAttr, PreWeatherDamageAbAttr, ProtectStatAbAttr, RedirectMoveAbAttr, BlockRedirectAbAttr, RunSuccessAbAttr, StatChangeMultiplierAbAttr, SuppressWeatherEffectAbAttr, SyncEncounterNatureAbAttr, applyAbAttrs, applyCheckTrappedAbAttrs, applyPostAttackAbAttrs, applyPostBattleAbAttrs, applyPostDefendAbAttrs, applyPostSummonAbAttrs, applyPostTurnAbAttrs, applyPostWeatherLapseAbAttrs, applyPreStatChangeAbAttrs, applyPreSwitchOutAbAttrs, applyPreWeatherEffectAbAttrs, ChangeMovePriorityAbAttr, applyPostVictoryAbAttrs, PostVictoryAbAttr, BlockNonDirectDamageAbAttr as BlockNonDirectDamageAbAttr, applyPostKnockOutAbAttrs, PostKnockOutAbAttr, PostBiomeChangeAbAttr, PreventBypassSpeedChanceAbAttr, applyPostFaintAbAttrs, PostFaintAbAttr, IncreasePpAbAttr, PostStatChangeAbAttr, applyPostStatChangeAbAttrs, AlwaysHitAbAttr, PreventBerryUseAbAttr, StatChangeCopyAbAttr, PokemonTypeChangeAbAttr, applyPreAttackAbAttrs, applyPostMoveUsedAbAttrs, PostMoveUsedAbAttr, MaxMultiHitAbAttr, HealFromBerryUseAbAttr, IgnoreMoveEffectsAbAttr, BlockStatusDamageAbAttr, BypassSpeedChanceAbAttr, AddSecondStrikeAbAttr, ReduceBurnDamageAbAttr } from "./data/ability";
2023-04-29 05:40:24 +00:00
import { Unlockables, getUnlockableName } from "./system/unlockables";
2024-03-01 01:08:50 +00:00
import { getBiomeKey } from "./field/arena";
2023-10-07 20:08:33 +00:00
import { BattleType, BattlerIndex, TurnCommand } from "./battle";
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
import { ChallengeAchv, HealAchv, LevelAchv, achvs } from "./system/achv";
import { TrainerSlot, trainerConfigs } from "./data/trainer-config";
import { EggHatchPhase } from "./egg-hatch-phase";
import { Egg } from "./data/egg";
import { vouchers } from "./system/voucher";
2024-06-16 02:06:40 +00:00
import { clientSessionId, loggedInUser, updateUserInfo } from "./account";
import { SessionSaveData } from "./system/game-data";
2024-03-01 01:08:50 +00:00
import { addPokeballCaptureStars, addPokeballOpenParticles } from "./field/anims";
import { SpeciesFormChangeActiveTrigger, SpeciesFormChangeMoveLearnedTrigger, SpeciesFormChangePostMoveTrigger, SpeciesFormChangePreMoveTrigger } from "./data/pokemon-forms";
2024-05-17 01:41:38 +00:00
import { battleSpecDialogue, getCharVariantFromDialogue, miscDialogue } from "./data/dialogue";
import ModifierSelectUiHandler, { SHOP_OPTIONS_ROW_LIMIT } from "./ui/modifier-select-ui-handler";
2024-06-03 23:57:47 +00:00
import { SettingKeys } from "./system/settings/settings";
2024-02-13 23:42:11 +00:00
import { Tutorial, handleTutorial } from "./tutorial";
import { TerrainType } from "./data/terrain";
import { OptionSelectConfig, OptionSelectItem } from "./ui/abstact-option-select-ui-handler";
import { SaveSlotUiMode } from "./ui/save-slot-select-ui-handler";
2024-03-17 02:06:56 +00:00
import { fetchDailyRunSeed, getDailyRunStarters } from "./data/daily-run";
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
import { GameMode, GameModes, getGameMode } from "./game-mode";
import PokemonSpecies, { getPokemonSpecies, speciesStarters } from "./data/pokemon-species";
import i18next from "./plugins/i18n";
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
import Overrides from "#app/overrides";
[QoL] IV scanner update to hide the prompt and let you see the stats mid battle on the stats screen (#3285) * IV scanner PR fix Updated locales to have updated keys for IV scanner in menu Updated legacy UI to work with IV scanner changes Updated code to have player and enemy battle stats for ease of use Updated logic to make the player side work exactly the same as previously since there should be no HP stat shown for players. Also updated the colours so there's no more grey option for unknown stats Added HP, updated logic and colours. Need to undo changes to player pokemon to not be as squished because of no HP, and need to see what happens for trainers Fixing up some git errors Fixed a bug with double battles not updating the pokemon properly Updated settings to allow for the ability to skip the IV scanning prompts Adding functionality to IV scanner to skip prompt and see IVs mid battle * Merged with latest + fixed bug with IV scanner vs pokemon info container getRootSpeciesId being different * Updated as per merge comment * Updating to fix comments * Updated comments * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/settings.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/settings.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/settings.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Updating text of IV scanner to be gold * Updated text colour to use one of the existing golds instead of a custom gold * Japanese locale * Updating docs --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com>
2024-08-08 05:04:12 +00:00
import { TextStyle, addTextObject, getTextColor } from "./ui/text";
import { Type } from "./data/type";
import { BerryUsedEvent, EncounterPhaseEvent, MoveUsedEvent, TurnEndEvent, TurnInitEvent } from "./events/battle-scene";
import { Abilities } from "#enums/abilities";
import { ArenaTagType } from "#enums/arena-tag-type";
import { BattleSpec } from "#enums/battle-spec";
import { BattleStyle } from "#enums/battle-style";
import { BattlerTagType } from "#enums/battler-tag-type";
import { Biome } from "#enums/biome";
import { ExpNotification } from "#enums/exp-notification";
import { Moves } from "#enums/moves";
import { PlayerGender } from "#enums/player-gender";
import { Species } from "#enums/species";
import { TrainerType } from "#enums/trainer-type";
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
import { applyChallenges, ChallengeType } from "./data/challenge";
import { pokemonEvolutions } from "./data/pokemon-evolutions";
const { t } = i18next;
2023-12-30 23:41:25 +00:00
export class LoginPhase extends Phase {
2023-12-30 23:41:25 +00:00
private showText: boolean;
constructor(scene: BattleScene, showText?: boolean) {
super(scene);
this.showText = showText === undefined || !!showText;
}
start(): void {
super.start();
2024-04-10 05:32:49 +00:00
const hasSession = !!Utils.getCookie(Utils.sessionIdKey);
2023-12-30 23:41:25 +00:00
this.scene.ui.setMode(Mode.LOADING, { buttonActions: [] });
2024-04-10 05:32:49 +00:00
Utils.executeIf(bypassLogin || hasSession, updateUserInfo).then(response => {
const success = response ? response[0] : false;
const statusCode = response ? response[1] : null;
2023-12-30 23:41:25 +00:00
if (!success) {
2024-04-10 05:32:49 +00:00
if (!statusCode || statusCode === 400) {
if (this.showText) {
this.scene.ui.showText(i18next.t("menu:logInOrCreateAccount"));
}
2024-05-23 23:45:04 +00:00
this.scene.playSound("menu_open");
2024-04-10 05:32:49 +00:00
const loadData = () => {
updateUserInfo().then(success => {
if (!success[0]) {
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
Utils.removeCookie(Utils.sessionIdKey);
this.scene.reset(true, true);
return;
}
this.scene.gameData.loadSystem().then(() => this.end());
});
2024-04-10 05:32:49 +00:00
};
2024-05-23 23:45:04 +00:00
2024-04-10 05:32:49 +00:00
this.scene.ui.setMode(Mode.LOGIN_FORM, {
buttonActions: [
() => {
this.scene.ui.playSelect();
loadData();
}, () => {
this.scene.playSound("menu_open");
2024-04-10 05:32:49 +00:00
this.scene.ui.setMode(Mode.REGISTRATION_FORM, {
buttonActions: [
() => {
this.scene.ui.playSelect();
updateUserInfo().then(success => {
if (!success[0]) {
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
Utils.removeCookie(Utils.sessionIdKey);
this.scene.reset(true, true);
return;
}
this.end();
} );
2024-04-10 05:32:49 +00:00
}, () => {
this.scene.unshiftPhase(new LoginPhase(this.scene, false));
this.end();
}
]
});
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
}, () => {
const redirectUri = encodeURIComponent(`${import.meta.env.VITE_SERVER_URL}/auth/discord/callback`);
const discordId = import.meta.env.VITE_DISCORD_CLIENT_ID;
const discordUrl = `https://discord.com/api/oauth2/authorize?client_id=${discordId}&redirect_uri=${redirectUri}&response_type=code&scope=identify&prompt=none`;
window.open(discordUrl, "_self");
}, () => {
const redirectUri = encodeURIComponent(`${import.meta.env.VITE_SERVER_URL}/auth/google/callback`);
const googleId = import.meta.env.VITE_GOOGLE_CLIENT_ID;
const googleUrl = `https://accounts.google.com/o/oauth2/auth?client_id=${googleId}&redirect_uri=${redirectUri}&response_type=code&scope=openid`;
window.open(googleUrl, "_self");
2024-04-10 05:32:49 +00:00
}
]
});
} else if (statusCode === 401) {
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
Utils.removeCookie(Utils.sessionIdKey);
this.scene.reset(true, true);
2024-04-10 05:32:49 +00:00
} else {
this.scene.unshiftPhase(new UnavailablePhase(this.scene));
super.end();
}
2023-12-30 23:41:25 +00:00
return null;
2024-02-20 01:36:10 +00:00
} else {
this.scene.gameData.loadSystem().then(success => {
if (success || bypassLogin) {
2024-02-20 01:36:10 +00:00
this.end();
} else {
2024-02-20 01:36:10 +00:00
this.scene.ui.setMode(Mode.MESSAGE);
this.scene.ui.showText(t("menu:failedToLoadSaveData"));
2024-02-20 01:36:10 +00:00
}
});
}
2023-12-30 23:41:25 +00:00
});
}
end(): void {
this.scene.ui.setMode(Mode.MESSAGE);
if (!this.scene.gameData.gender) {
2024-02-20 01:36:10 +00:00
this.scene.unshiftPhase(new SelectGenderPhase(this.scene));
}
2024-05-23 23:45:04 +00:00
2024-02-13 23:42:11 +00:00
handleTutorial(this.scene, Tutorial.Intro).then(() => super.end());
}
2023-12-30 23:41:25 +00:00
}
2023-04-10 18:12:01 +00:00
export class TitlePhase extends Phase {
2023-04-28 19:03:42 +00:00
private loaded: boolean;
2024-03-21 17:12:05 +00:00
private lastSessionData: SessionSaveData;
[Testing] Flexible Testing Wrapper for Phaser-Based Battle-Scenes (#1908) * refactor executed code while importing and initializing all of these in loading-scene * reset to main * fix server url * added rule no-trailing-spaces * made progress * test somme data from a session save is working * trying to launch a battle * added fetch wrapper to load data locally * trying to mockAllSettled * pushPhase & shiftPhase * check integrity of exported session * set toke + loggedInUser in tests * progress on starting new battle * tring to test phase but it's async * mocking fetch * working mock fetch * need to handle pile of data * attempt to use real phaser classes * reorder overrides * refactored to use some real classes from phaser * removed useless things * started to work on some container mock * finished the mockContainer time to add some logic * some more mock containers * removed addMethods since there is the mock classes now * commented issues * attempt to create mockTextureManager * fix tests * mockSprite & mockText * yes but not really * yes but not really * fix tutorial callback * reached mode title * added achievement tests * fix test achievements with current state of mock * correct sequence loading for BattleScene with mockLoader ! * deep dive into next step * working wait until starter selection screen * added newGame method into wrapper * expect to save_slot * trying to manage pokemon sprite for getAll without success yet * added test for egg output * fixed egg test for June * fix tests + locate next issue to fix * we are in battle baby * added new game in one-line * export is working but export only what's in the fetch * fix start game as guest * refactored how we start a battle + cleanup * overrided mewtwo but issue with currentBattle * refactor: rename InitAchievements to initAchievements * added missing mock method * override level and pokemon forms working as intended * bringToTop Obj * remove launch battle in achivement test * fix getIndex when same pokemon * can run all tests * first attack, faint, and shop modifiers, MockClock * on method for container * added doAttack one-liner * one-line export data * removed throw error * feat: Make `scenes` property of `GameWrapper` class public The `scenes` property of the `GameWrapper` class was changed from private to public. This change allows external access to the `scenes` map, which is used to store Phaser scenes. This modification was made to enable easier manipulation and interaction with the scenes in the game. * correction * removed CanvasRenderer * added a param to remove console.log and added a param to preven scene create call * fix encounter wave 30 when it's a trainer * test double-battle * test fight without KO * test double fight no ko * fix crashing texture + added Text wrapper to log fight * fix tests on boss - trainer - rival * chore: Refactor BattleScene initialization and add new phases Refactor the BattleScene initialization code to remove unnecessary delay and improve performance. Also, add new phases for the title and unavailable states to enhance the game experience. * rework of Game tests * skipFn is working * added onNextPrompt and restore Og Start * better newGame * added skipFN in remove * not yet working test but updated interceptors * do attack work but not on PostSummonPhase phase when there is mention of silcoon and wurmple * error located, it's just a double fight, i was not there yet * single OHKO & double no OHKO * added expirationFn into next prompt * all tests are passing * working test on non damaging move from opponent * cleaned a bit * removed phaser initialisation on every tests * renamed test file * added load system data * added some ability support * added onKill & onSummon abilities test * removed useless test + cleanup * removed useless test + cleanup * fixed tests after merge main * added itemHeld endTurn trigger test (toxic orb) * added runFrom..To * added mustRun to assert currentPhase * added no-miss move to test things * cleaner restore mock * fix test * fix moxie test + game speed * improve test speed * added onOurself and onOpponent mvoe test * added onDamage test for tackle * removed timeout in intervals to run tests faster * cleanup * added never crit override + separate file per test + remove randomness in randBattleSeedInt * move folders * better org * renamed itemHeld folder to items * fix deploy.yml * cleanup * simplified the gameManager start battle and allow single pokemon in party * remove the need of mode development * added input handler to test inputs + remove time from phaser into inputController * added keyboard support * added fakeMobile support * added details * removed a console.log + added logUp * move test to folder * fixed canvas issue * added starter select tests * added some more test on starter-select * added battle-order tests * added battle-order tests * fixing Phaser RNG * ordering stats for better reading * fix tests for main * adapt battle-order test to be more readable * fix merge * fix some errors and silent all errors from gameWrapper since it's not possible to avoid them * fix mocks to manage childs & stuffs * added some docs * fix achievement test * removed an unused file * separate misc tests to clean battle.test file * added a basic french lokalization test * added i18n where it needs to be used only * revers extracted method * removed unused method * removed handler fetch since we do not test anything server related * fix test with handlers removed * added intrepid sword test * fix enum exp party --------- Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt>
2024-06-07 22:33:45 +00:00
public gameMode: GameModes;
2023-04-28 19:03:42 +00:00
constructor(scene: BattleScene) {
super(scene);
this.loaded = false;
}
start(): void {
2023-12-30 23:41:25 +00:00
super.start();
2024-03-17 02:06:56 +00:00
this.scene.ui.clearText();
this.scene.ui.fadeIn(250);
this.scene.playBgm("title", true);
this.scene.gameData.getSession(loggedInUser?.lastSessionSlot ?? -1).then(sessionData => {
if (sessionData) {
this.lastSessionData = sessionData;
const biomeKey = getBiomeKey(sessionData.arena.biome);
const bgTexture = `${biomeKey}_bg`;
this.scene.arenaBg.setTexture(bgTexture);
}
2024-03-21 17:12:05 +00:00
this.showOptions();
}).catch(err => {
console.error(err);
this.showOptions();
2024-03-21 17:12:05 +00:00
});
}
showOptions(): void {
const options: OptionSelectItem[] = [];
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
if (loggedInUser && loggedInUser.lastSessionSlot > -1) {
options.push({
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
label: i18next.t("continue", {ns: "menu"}),
handler: () => {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.loadSaveSlot(this.lastSessionData || !loggedInUser ? -1 : loggedInUser.lastSessionSlot);
return true;
}
});
}
options.push({
label: i18next.t("menu:newGame"),
handler: () => {
2024-04-07 03:50:26 +00:00
const setModeAndEnd = (gameMode: GameModes) => {
this.gameMode = gameMode;
this.scene.ui.setMode(Mode.MESSAGE);
this.scene.ui.clearText();
this.end();
};
if (this.scene.gameData.unlocks[Unlockables.ENDLESS_MODE]) {
const options: OptionSelectItem[] = [
2024-04-07 03:50:26 +00:00
{
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
label: GameMode.getModeName(GameModes.CLASSIC),
handler: () => {
setModeAndEnd(GameModes.CLASSIC);
return true;
}
2024-04-07 03:50:26 +00:00
},
{
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
label: GameMode.getModeName(GameModes.CHALLENGE),
handler: () => {
setModeAndEnd(GameModes.CHALLENGE);
return true;
}
},
{
label: GameMode.getModeName(GameModes.ENDLESS),
handler: () => {
setModeAndEnd(GameModes.ENDLESS);
return true;
}
2024-04-07 03:50:26 +00:00
}
];
if (this.scene.gameData.unlocks[Unlockables.SPLICED_ENDLESS_MODE]) {
options.push({
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
label: GameMode.getModeName(GameModes.SPLICED_ENDLESS),
handler: () => {
setModeAndEnd(GameModes.SPLICED_ENDLESS);
return true;
}
2024-04-07 03:50:26 +00:00
});
}
options.push({
label: i18next.t("menu:cancel"),
2024-04-07 03:50:26 +00:00
handler: () => {
this.scene.clearPhaseQueue();
this.scene.pushPhase(new TitlePhase(this.scene));
super.end();
return true;
2024-04-07 03:50:26 +00:00
}
});
this.scene.ui.showText(i18next.t("menu:selectGameMode"), null, () => this.scene.ui.setOverlayMode(Mode.OPTION_SELECT, { options: options }));
} else {
this.gameMode = GameModes.CLASSIC;
this.scene.ui.setMode(Mode.MESSAGE);
this.scene.ui.clearText();
2024-04-07 03:50:26 +00:00
this.end();
}
return true;
}
},
{
label: i18next.t("menu:loadGame"),
handler: () => {
this.scene.ui.setOverlayMode(Mode.SAVE_SLOT, SaveSlotUiMode.LOAD,
(slotId: integer) => {
if (slotId === -1) {
return this.showOptions();
}
this.loadSaveSlot(slotId);
});
return true;
}
2024-03-17 02:06:56 +00:00
},
{
label: i18next.t("menu:dailyRun"),
handler: () => {
this.initDailyRun();
return true;
},
keepOpen: true
},
{
label: i18next.t("menu:settings"),
handler: () => {
this.scene.ui.setOverlayMode(Mode.SETTINGS);
return true;
},
keepOpen: true
2024-03-17 02:06:56 +00:00
});
const config: OptionSelectConfig = {
options: options,
2024-03-21 17:12:05 +00:00
noCancel: true,
yOffset: 47
};
2024-03-21 17:12:05 +00:00
this.scene.ui.setMode(Mode.TITLE, config);
}
loadSaveSlot(slotId: integer): void {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.sessionSlotId = slotId > -1 || !loggedInUser ? slotId : loggedInUser.lastSessionSlot;
this.scene.ui.setMode(Mode.MESSAGE);
this.scene.ui.resetModeChain();
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.gameData.loadSession(this.scene, slotId, slotId === -1 ? this.lastSessionData : undefined).then((success: boolean) => {
if (success) {
this.loaded = true;
this.scene.ui.showText(i18next.t("menu:sessionSuccess"), null, () => this.end());
} else {
this.end();
}
}).catch(err => {
console.error(err);
this.scene.ui.showText(i18next.t("menu:failedToLoadSession"), null);
2023-04-28 19:03:42 +00:00
});
}
initDailyRun(): void {
this.scene.ui.setMode(Mode.SAVE_SLOT, SaveSlotUiMode.SAVE, (slotId: integer) => {
this.scene.clearPhaseQueue();
if (slotId === -1) {
this.scene.pushPhase(new TitlePhase(this.scene));
return super.end();
}
this.scene.sessionSlotId = slotId;
2024-03-17 02:06:56 +00:00
const generateDaily = (seed: string) => {
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
this.scene.gameMode = getGameMode(GameModes.DAILY);
2024-03-17 02:06:56 +00:00
this.scene.setSeed(seed);
this.scene.resetSeed(1);
this.scene.money = this.scene.gameMode.getStartingMoney();
const starters = getDailyRunStarters(this.scene, seed);
const startingLevel = this.scene.gameMode.getStartingLevel();
const party = this.scene.getParty();
const loadPokemonAssets: Promise<void>[] = [];
for (const starter of starters) {
2024-03-17 02:06:56 +00:00
const starterProps = this.scene.gameData.getSpeciesDexAttrProps(starter.species, starter.dexAttr);
const starterFormIndex = Math.min(starterProps.formIndex, Math.max(starter.species.forms.length - 1, 0));
const starterGender = starter.species.malePercent !== null
? !starterProps.female ? Gender.MALE : Gender.FEMALE
: Gender.GENDERLESS;
2024-04-19 02:52:26 +00:00
const starterPokemon = this.scene.addPlayerPokemon(starter.species, startingLevel, starter.abilityIndex, starterFormIndex, starterGender, starterProps.shiny, starterProps.variant, undefined, starter.nature);
2024-03-17 02:06:56 +00:00
starterPokemon.setVisible(false);
party.push(starterPokemon);
loadPokemonAssets.push(starterPokemon.loadAssets());
}
2024-05-23 23:45:04 +00:00
2024-03-17 02:06:56 +00:00
regenerateModifierPoolThresholds(party, ModifierPoolType.DAILY_STARTER);
const modifiers: Modifier[] = Array(3).fill(null).map(() => modifierTypes.EXP_SHARE().withIdFromFunc(modifierTypes.EXP_SHARE).newModifier())
.concat(Array(3).fill(null).map(() => modifierTypes.GOLDEN_EXP_CHARM().withIdFromFunc(modifierTypes.GOLDEN_EXP_CHARM).newModifier()))
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
.concat(getDailyRunStarterModifiers(party))
.filter((m) => m !== null);
2024-03-17 02:06:56 +00:00
for (const m of modifiers) {
2024-03-17 02:06:56 +00:00
this.scene.addModifier(m, true, false, false, true);
}
2024-03-17 02:06:56 +00:00
this.scene.updateModifiers(true, true);
Promise.all(loadPokemonAssets).then(() => {
this.scene.time.delayedCall(500, () => this.scene.playBgm());
this.scene.gameData.gameStats.dailyRunSessionsPlayed++;
this.scene.newArena(this.scene.gameMode.getStartingBiome(this.scene));
2024-03-17 02:06:56 +00:00
this.scene.newBattle();
this.scene.arena.init();
2024-03-17 02:06:56 +00:00
this.scene.sessionPlayTime = 0;
this.scene.lastSavePlayTime = 0;
2024-03-17 02:06:56 +00:00
this.end();
});
};
2024-05-23 23:45:04 +00:00
// If Online, calls seed fetch from db to generate daily run. If Offline, generates a daily run based on current date.
if (!Utils.isLocal) {
fetchDailyRunSeed().then(seed => {
if (seed) {
generateDaily(seed);
} else {
throw new Error("Daily run seed is null!");
}
}).catch(err => {
console.error("Failed to load daily run:\n", err);
});
} else {
generateDaily(btoa(new Date().toISOString().substring(0, 10)));
}
});
}
2023-04-28 19:03:42 +00:00
end(): void {
if (!this.loaded && !this.scene.gameMode.isDaily) {
2023-04-28 19:03:42 +00:00
this.scene.arena.preloadBgm();
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
this.scene.gameMode = getGameMode(this.gameMode);
if (this.gameMode === GameModes.CHALLENGE) {
this.scene.pushPhase(new SelectChallengePhase(this.scene));
} else {
this.scene.pushPhase(new SelectStarterPhase(this.scene));
}
this.scene.newArena(this.scene.gameMode.getStartingBiome(this.scene));
} else {
this.scene.playBgm();
}
2023-04-28 19:03:42 +00:00
this.scene.pushPhase(new EncounterPhase(this.scene, this.loaded));
2023-12-02 15:30:23 +00:00
if (this.loaded) {
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
const availablePartyMembers = this.scene.getParty().filter(p => p.isAllowedInBattle()).length;
2023-12-02 15:30:23 +00:00
2024-04-11 00:57:22 +00:00
this.scene.pushPhase(new SummonPhase(this.scene, 0, true, true));
if (this.scene.currentBattle.double && availablePartyMembers > 1) {
2024-04-11 00:57:22 +00:00
this.scene.pushPhase(new SummonPhase(this.scene, 1, true, true));
}
if (this.scene.currentBattle.battleType !== BattleType.TRAINER && (this.scene.currentBattle.waveIndex > 1 || !this.scene.gameMode.isDaily)) {
const minPartySize = this.scene.currentBattle.double ? 2 : 1;
if (availablePartyMembers > minPartySize) {
this.scene.pushPhase(new CheckSwitchPhase(this.scene, 0, this.scene.currentBattle.double));
if (this.scene.currentBattle.double) {
this.scene.pushPhase(new CheckSwitchPhase(this.scene, 1, this.scene.currentBattle.double));
}
}
2023-12-02 15:30:23 +00:00
}
}
2023-04-28 19:03:42 +00:00
for (const achv of Object.keys(this.scene.gameData.achvUnlocks)) {
if (vouchers.hasOwnProperty(achv)) {
this.scene.validateVoucher(vouchers[achv]);
}
}
2023-04-28 19:03:42 +00:00
super.end();
}
}
2024-04-10 05:32:49 +00:00
export class UnavailablePhase extends Phase {
constructor(scene: BattleScene) {
super(scene);
}
start(): void {
this.scene.ui.setMode(Mode.UNAVAILABLE, () => {
this.scene.unshiftPhase(new LoginPhase(this.scene, true));
this.end();
});
}
}
export class ReloadSessionPhase extends Phase {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
private systemDataStr: string | null;
constructor(scene: BattleScene, systemDataStr?: string) {
super(scene);
this.systemDataStr = systemDataStr ?? null;
}
start(): void {
this.scene.ui.setMode(Mode.SESSION_RELOAD);
let delayElapsed = false;
let loaded = false;
this.scene.time.delayedCall(Utils.fixedInt(1500), () => {
if (loaded) {
this.end();
} else {
delayElapsed = true;
}
});
this.scene.gameData.clearLocalData();
(this.systemDataStr ? this.scene.gameData.initSystem(this.systemDataStr) : this.scene.gameData.loadSystem()).then(() => {
if (delayElapsed) {
this.end();
} else {
loaded = true;
}
});
}
}
2024-04-15 14:09:51 +00:00
export class OutdatedPhase extends Phase {
constructor(scene: BattleScene) {
super(scene);
}
start(): void {
this.scene.ui.setMode(Mode.OUTDATED);
}
}
export class SelectGenderPhase extends Phase {
2024-02-06 21:15:35 +00:00
constructor(scene: BattleScene) {
super(scene);
}
2024-05-23 23:45:04 +00:00
2024-02-06 21:15:35 +00:00
start(): void {
super.start();
this.scene.ui.showText(i18next.t("menu:boyOrGirl"), null, () => {
2024-02-06 21:15:35 +00:00
this.scene.ui.setMode(Mode.OPTION_SELECT, {
options: [
{
label: i18next.t("settings:boy"),
2024-02-06 21:15:35 +00:00
handler: () => {
this.scene.gameData.gender = PlayerGender.MALE;
2024-06-03 23:57:47 +00:00
this.scene.gameData.saveSetting(SettingKeys.Player_Gender, 0);
2024-02-06 21:15:35 +00:00
this.scene.gameData.saveSystem().then(() => this.end());
return true;
2024-02-06 21:15:35 +00:00
}
},
{
label: i18next.t("settings:girl"),
2024-02-06 21:15:35 +00:00
handler: () => {
this.scene.gameData.gender = PlayerGender.FEMALE;
2024-06-03 23:57:47 +00:00
this.scene.gameData.saveSetting(SettingKeys.Player_Gender, 1);
2024-02-06 21:15:35 +00:00
this.scene.gameData.saveSystem().then(() => this.end());
return true;
2024-02-06 21:15:35 +00:00
}
}
]
});
});
}
2024-03-17 14:11:24 +00:00
end(): void {
this.scene.ui.setMode(Mode.MESSAGE);
super.end();
}
2024-02-06 21:15:35 +00:00
}
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
export class SelectChallengePhase extends Phase {
constructor(scene: BattleScene) {
super(scene);
}
start() {
super.start();
this.scene.playBgm("menu");
this.scene.ui.setMode(Mode.CHALLENGE_SELECT);
}
}
export class SelectStarterPhase extends Phase {
2024-04-07 03:50:26 +00:00
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
constructor(scene: BattleScene) {
2023-04-10 18:12:01 +00:00
super(scene);
}
start() {
super.start();
this.scene.playBgm("menu");
2023-04-12 23:09:15 +00:00
this.scene.ui.setMode(Mode.STARTER_SELECT, (starters: Starter[]) => {
this.scene.ui.clearText();
this.scene.ui.setMode(Mode.SAVE_SLOT, SaveSlotUiMode.SAVE, (slotId: integer) => {
if (slotId === -1) {
this.scene.clearPhaseQueue();
this.scene.pushPhase(new TitlePhase(this.scene));
return this.end();
}
this.scene.sessionSlotId = slotId;
[Testing] Flexible Testing Wrapper for Phaser-Based Battle-Scenes (#1908) * refactor executed code while importing and initializing all of these in loading-scene * reset to main * fix server url * added rule no-trailing-spaces * made progress * test somme data from a session save is working * trying to launch a battle * added fetch wrapper to load data locally * trying to mockAllSettled * pushPhase & shiftPhase * check integrity of exported session * set toke + loggedInUser in tests * progress on starting new battle * tring to test phase but it's async * mocking fetch * working mock fetch * need to handle pile of data * attempt to use real phaser classes * reorder overrides * refactored to use some real classes from phaser * removed useless things * started to work on some container mock * finished the mockContainer time to add some logic * some more mock containers * removed addMethods since there is the mock classes now * commented issues * attempt to create mockTextureManager * fix tests * mockSprite & mockText * yes but not really * yes but not really * fix tutorial callback * reached mode title * added achievement tests * fix test achievements with current state of mock * correct sequence loading for BattleScene with mockLoader ! * deep dive into next step * working wait until starter selection screen * added newGame method into wrapper * expect to save_slot * trying to manage pokemon sprite for getAll without success yet * added test for egg output * fixed egg test for June * fix tests + locate next issue to fix * we are in battle baby * added new game in one-line * export is working but export only what's in the fetch * fix start game as guest * refactored how we start a battle + cleanup * overrided mewtwo but issue with currentBattle * refactor: rename InitAchievements to initAchievements * added missing mock method * override level and pokemon forms working as intended * bringToTop Obj * remove launch battle in achivement test * fix getIndex when same pokemon * can run all tests * first attack, faint, and shop modifiers, MockClock * on method for container * added doAttack one-liner * one-line export data * removed throw error * feat: Make `scenes` property of `GameWrapper` class public The `scenes` property of the `GameWrapper` class was changed from private to public. This change allows external access to the `scenes` map, which is used to store Phaser scenes. This modification was made to enable easier manipulation and interaction with the scenes in the game. * correction * removed CanvasRenderer * added a param to remove console.log and added a param to preven scene create call * fix encounter wave 30 when it's a trainer * test double-battle * test fight without KO * test double fight no ko * fix crashing texture + added Text wrapper to log fight * fix tests on boss - trainer - rival * chore: Refactor BattleScene initialization and add new phases Refactor the BattleScene initialization code to remove unnecessary delay and improve performance. Also, add new phases for the title and unavailable states to enhance the game experience. * rework of Game tests * skipFn is working * added onNextPrompt and restore Og Start * better newGame * added skipFN in remove * not yet working test but updated interceptors * do attack work but not on PostSummonPhase phase when there is mention of silcoon and wurmple * error located, it's just a double fight, i was not there yet * single OHKO & double no OHKO * added expirationFn into next prompt * all tests are passing * working test on non damaging move from opponent * cleaned a bit * removed phaser initialisation on every tests * renamed test file * added load system data * added some ability support * added onKill & onSummon abilities test * removed useless test + cleanup * removed useless test + cleanup * fixed tests after merge main * added itemHeld endTurn trigger test (toxic orb) * added runFrom..To * added mustRun to assert currentPhase * added no-miss move to test things * cleaner restore mock * fix test * fix moxie test + game speed * improve test speed * added onOurself and onOpponent mvoe test * added onDamage test for tackle * removed timeout in intervals to run tests faster * cleanup * added never crit override + separate file per test + remove randomness in randBattleSeedInt * move folders * better org * renamed itemHeld folder to items * fix deploy.yml * cleanup * simplified the gameManager start battle and allow single pokemon in party * remove the need of mode development * added input handler to test inputs + remove time from phaser into inputController * added keyboard support * added fakeMobile support * added details * removed a console.log + added logUp * move test to folder * fixed canvas issue * added starter select tests * added some more test on starter-select * added battle-order tests * added battle-order tests * fixing Phaser RNG * ordering stats for better reading * fix tests for main * adapt battle-order test to be more readable * fix merge * fix some errors and silent all errors from gameWrapper since it's not possible to avoid them * fix mocks to manage childs & stuffs * added some docs * fix achievement test * removed an unused file * separate misc tests to clean battle.test file * added a basic french lokalization test * added i18n where it needs to be used only * revers extracted method * removed unused method * removed handler fetch since we do not test anything server related * fix test with handlers removed * added intrepid sword test * fix enum exp party --------- Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt>
2024-06-07 22:33:45 +00:00
this.initBattle(starters);
2023-04-12 23:09:15 +00:00
});
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
});
2023-04-10 18:12:01 +00:00
}
[Testing] Flexible Testing Wrapper for Phaser-Based Battle-Scenes (#1908) * refactor executed code while importing and initializing all of these in loading-scene * reset to main * fix server url * added rule no-trailing-spaces * made progress * test somme data from a session save is working * trying to launch a battle * added fetch wrapper to load data locally * trying to mockAllSettled * pushPhase & shiftPhase * check integrity of exported session * set toke + loggedInUser in tests * progress on starting new battle * tring to test phase but it's async * mocking fetch * working mock fetch * need to handle pile of data * attempt to use real phaser classes * reorder overrides * refactored to use some real classes from phaser * removed useless things * started to work on some container mock * finished the mockContainer time to add some logic * some more mock containers * removed addMethods since there is the mock classes now * commented issues * attempt to create mockTextureManager * fix tests * mockSprite & mockText * yes but not really * yes but not really * fix tutorial callback * reached mode title * added achievement tests * fix test achievements with current state of mock * correct sequence loading for BattleScene with mockLoader ! * deep dive into next step * working wait until starter selection screen * added newGame method into wrapper * expect to save_slot * trying to manage pokemon sprite for getAll without success yet * added test for egg output * fixed egg test for June * fix tests + locate next issue to fix * we are in battle baby * added new game in one-line * export is working but export only what's in the fetch * fix start game as guest * refactored how we start a battle + cleanup * overrided mewtwo but issue with currentBattle * refactor: rename InitAchievements to initAchievements * added missing mock method * override level and pokemon forms working as intended * bringToTop Obj * remove launch battle in achivement test * fix getIndex when same pokemon * can run all tests * first attack, faint, and shop modifiers, MockClock * on method for container * added doAttack one-liner * one-line export data * removed throw error * feat: Make `scenes` property of `GameWrapper` class public The `scenes` property of the `GameWrapper` class was changed from private to public. This change allows external access to the `scenes` map, which is used to store Phaser scenes. This modification was made to enable easier manipulation and interaction with the scenes in the game. * correction * removed CanvasRenderer * added a param to remove console.log and added a param to preven scene create call * fix encounter wave 30 when it's a trainer * test double-battle * test fight without KO * test double fight no ko * fix crashing texture + added Text wrapper to log fight * fix tests on boss - trainer - rival * chore: Refactor BattleScene initialization and add new phases Refactor the BattleScene initialization code to remove unnecessary delay and improve performance. Also, add new phases for the title and unavailable states to enhance the game experience. * rework of Game tests * skipFn is working * added onNextPrompt and restore Og Start * better newGame * added skipFN in remove * not yet working test but updated interceptors * do attack work but not on PostSummonPhase phase when there is mention of silcoon and wurmple * error located, it's just a double fight, i was not there yet * single OHKO & double no OHKO * added expirationFn into next prompt * all tests are passing * working test on non damaging move from opponent * cleaned a bit * removed phaser initialisation on every tests * renamed test file * added load system data * added some ability support * added onKill & onSummon abilities test * removed useless test + cleanup * removed useless test + cleanup * fixed tests after merge main * added itemHeld endTurn trigger test (toxic orb) * added runFrom..To * added mustRun to assert currentPhase * added no-miss move to test things * cleaner restore mock * fix test * fix moxie test + game speed * improve test speed * added onOurself and onOpponent mvoe test * added onDamage test for tackle * removed timeout in intervals to run tests faster * cleanup * added never crit override + separate file per test + remove randomness in randBattleSeedInt * move folders * better org * renamed itemHeld folder to items * fix deploy.yml * cleanup * simplified the gameManager start battle and allow single pokemon in party * remove the need of mode development * added input handler to test inputs + remove time from phaser into inputController * added keyboard support * added fakeMobile support * added details * removed a console.log + added logUp * move test to folder * fixed canvas issue * added starter select tests * added some more test on starter-select * added battle-order tests * added battle-order tests * fixing Phaser RNG * ordering stats for better reading * fix tests for main * adapt battle-order test to be more readable * fix merge * fix some errors and silent all errors from gameWrapper since it's not possible to avoid them * fix mocks to manage childs & stuffs * added some docs * fix achievement test * removed an unused file * separate misc tests to clean battle.test file * added a basic french lokalization test * added i18n where it needs to be used only * revers extracted method * removed unused method * removed handler fetch since we do not test anything server related * fix test with handlers removed * added intrepid sword test * fix enum exp party --------- Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt>
2024-06-07 22:33:45 +00:00
/**
* Initialize starters before starting the first battle
* @param starters {@linkcode Pokemon} with which to start the first battle
*/
[Testing] Flexible Testing Wrapper for Phaser-Based Battle-Scenes (#1908) * refactor executed code while importing and initializing all of these in loading-scene * reset to main * fix server url * added rule no-trailing-spaces * made progress * test somme data from a session save is working * trying to launch a battle * added fetch wrapper to load data locally * trying to mockAllSettled * pushPhase & shiftPhase * check integrity of exported session * set toke + loggedInUser in tests * progress on starting new battle * tring to test phase but it's async * mocking fetch * working mock fetch * need to handle pile of data * attempt to use real phaser classes * reorder overrides * refactored to use some real classes from phaser * removed useless things * started to work on some container mock * finished the mockContainer time to add some logic * some more mock containers * removed addMethods since there is the mock classes now * commented issues * attempt to create mockTextureManager * fix tests * mockSprite & mockText * yes but not really * yes but not really * fix tutorial callback * reached mode title * added achievement tests * fix test achievements with current state of mock * correct sequence loading for BattleScene with mockLoader ! * deep dive into next step * working wait until starter selection screen * added newGame method into wrapper * expect to save_slot * trying to manage pokemon sprite for getAll without success yet * added test for egg output * fixed egg test for June * fix tests + locate next issue to fix * we are in battle baby * added new game in one-line * export is working but export only what's in the fetch * fix start game as guest * refactored how we start a battle + cleanup * overrided mewtwo but issue with currentBattle * refactor: rename InitAchievements to initAchievements * added missing mock method * override level and pokemon forms working as intended * bringToTop Obj * remove launch battle in achivement test * fix getIndex when same pokemon * can run all tests * first attack, faint, and shop modifiers, MockClock * on method for container * added doAttack one-liner * one-line export data * removed throw error * feat: Make `scenes` property of `GameWrapper` class public The `scenes` property of the `GameWrapper` class was changed from private to public. This change allows external access to the `scenes` map, which is used to store Phaser scenes. This modification was made to enable easier manipulation and interaction with the scenes in the game. * correction * removed CanvasRenderer * added a param to remove console.log and added a param to preven scene create call * fix encounter wave 30 when it's a trainer * test double-battle * test fight without KO * test double fight no ko * fix crashing texture + added Text wrapper to log fight * fix tests on boss - trainer - rival * chore: Refactor BattleScene initialization and add new phases Refactor the BattleScene initialization code to remove unnecessary delay and improve performance. Also, add new phases for the title and unavailable states to enhance the game experience. * rework of Game tests * skipFn is working * added onNextPrompt and restore Og Start * better newGame * added skipFN in remove * not yet working test but updated interceptors * do attack work but not on PostSummonPhase phase when there is mention of silcoon and wurmple * error located, it's just a double fight, i was not there yet * single OHKO & double no OHKO * added expirationFn into next prompt * all tests are passing * working test on non damaging move from opponent * cleaned a bit * removed phaser initialisation on every tests * renamed test file * added load system data * added some ability support * added onKill & onSummon abilities test * removed useless test + cleanup * removed useless test + cleanup * fixed tests after merge main * added itemHeld endTurn trigger test (toxic orb) * added runFrom..To * added mustRun to assert currentPhase * added no-miss move to test things * cleaner restore mock * fix test * fix moxie test + game speed * improve test speed * added onOurself and onOpponent mvoe test * added onDamage test for tackle * removed timeout in intervals to run tests faster * cleanup * added never crit override + separate file per test + remove randomness in randBattleSeedInt * move folders * better org * renamed itemHeld folder to items * fix deploy.yml * cleanup * simplified the gameManager start battle and allow single pokemon in party * remove the need of mode development * added input handler to test inputs + remove time from phaser into inputController * added keyboard support * added fakeMobile support * added details * removed a console.log + added logUp * move test to folder * fixed canvas issue * added starter select tests * added some more test on starter-select * added battle-order tests * added battle-order tests * fixing Phaser RNG * ordering stats for better reading * fix tests for main * adapt battle-order test to be more readable * fix merge * fix some errors and silent all errors from gameWrapper since it's not possible to avoid them * fix mocks to manage childs & stuffs * added some docs * fix achievement test * removed an unused file * separate misc tests to clean battle.test file * added a basic french lokalization test * added i18n where it needs to be used only * revers extracted method * removed unused method * removed handler fetch since we do not test anything server related * fix test with handlers removed * added intrepid sword test * fix enum exp party --------- Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt>
2024-06-07 22:33:45 +00:00
initBattle(starters: Starter[]) {
const party = this.scene.getParty();
const loadPokemonAssets: Promise<void>[] = [];
starters.forEach((starter: Starter, i: integer) => {
if (!i && Overrides.STARTER_SPECIES_OVERRIDE) {
starter.species = getPokemonSpecies(Overrides.STARTER_SPECIES_OVERRIDE as Species);
}
const starterProps = this.scene.gameData.getSpeciesDexAttrProps(starter.species, starter.dexAttr);
let starterFormIndex = Math.min(starterProps.formIndex, Math.max(starter.species.forms.length - 1, 0));
if (
starter.species.speciesId in Overrides.STARTER_FORM_OVERRIDES &&
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
starter.species.forms[Overrides.STARTER_FORM_OVERRIDES[starter.species.speciesId]!]
) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
starterFormIndex = Overrides.STARTER_FORM_OVERRIDES[starter.species.speciesId]!;
[Testing] Flexible Testing Wrapper for Phaser-Based Battle-Scenes (#1908) * refactor executed code while importing and initializing all of these in loading-scene * reset to main * fix server url * added rule no-trailing-spaces * made progress * test somme data from a session save is working * trying to launch a battle * added fetch wrapper to load data locally * trying to mockAllSettled * pushPhase & shiftPhase * check integrity of exported session * set toke + loggedInUser in tests * progress on starting new battle * tring to test phase but it's async * mocking fetch * working mock fetch * need to handle pile of data * attempt to use real phaser classes * reorder overrides * refactored to use some real classes from phaser * removed useless things * started to work on some container mock * finished the mockContainer time to add some logic * some more mock containers * removed addMethods since there is the mock classes now * commented issues * attempt to create mockTextureManager * fix tests * mockSprite & mockText * yes but not really * yes but not really * fix tutorial callback * reached mode title * added achievement tests * fix test achievements with current state of mock * correct sequence loading for BattleScene with mockLoader ! * deep dive into next step * working wait until starter selection screen * added newGame method into wrapper * expect to save_slot * trying to manage pokemon sprite for getAll without success yet * added test for egg output * fixed egg test for June * fix tests + locate next issue to fix * we are in battle baby * added new game in one-line * export is working but export only what's in the fetch * fix start game as guest * refactored how we start a battle + cleanup * overrided mewtwo but issue with currentBattle * refactor: rename InitAchievements to initAchievements * added missing mock method * override level and pokemon forms working as intended * bringToTop Obj * remove launch battle in achivement test * fix getIndex when same pokemon * can run all tests * first attack, faint, and shop modifiers, MockClock * on method for container * added doAttack one-liner * one-line export data * removed throw error * feat: Make `scenes` property of `GameWrapper` class public The `scenes` property of the `GameWrapper` class was changed from private to public. This change allows external access to the `scenes` map, which is used to store Phaser scenes. This modification was made to enable easier manipulation and interaction with the scenes in the game. * correction * removed CanvasRenderer * added a param to remove console.log and added a param to preven scene create call * fix encounter wave 30 when it's a trainer * test double-battle * test fight without KO * test double fight no ko * fix crashing texture + added Text wrapper to log fight * fix tests on boss - trainer - rival * chore: Refactor BattleScene initialization and add new phases Refactor the BattleScene initialization code to remove unnecessary delay and improve performance. Also, add new phases for the title and unavailable states to enhance the game experience. * rework of Game tests * skipFn is working * added onNextPrompt and restore Og Start * better newGame * added skipFN in remove * not yet working test but updated interceptors * do attack work but not on PostSummonPhase phase when there is mention of silcoon and wurmple * error located, it's just a double fight, i was not there yet * single OHKO & double no OHKO * added expirationFn into next prompt * all tests are passing * working test on non damaging move from opponent * cleaned a bit * removed phaser initialisation on every tests * renamed test file * added load system data * added some ability support * added onKill & onSummon abilities test * removed useless test + cleanup * removed useless test + cleanup * fixed tests after merge main * added itemHeld endTurn trigger test (toxic orb) * added runFrom..To * added mustRun to assert currentPhase * added no-miss move to test things * cleaner restore mock * fix test * fix moxie test + game speed * improve test speed * added onOurself and onOpponent mvoe test * added onDamage test for tackle * removed timeout in intervals to run tests faster * cleanup * added never crit override + separate file per test + remove randomness in randBattleSeedInt * move folders * better org * renamed itemHeld folder to items * fix deploy.yml * cleanup * simplified the gameManager start battle and allow single pokemon in party * remove the need of mode development * added input handler to test inputs + remove time from phaser into inputController * added keyboard support * added fakeMobile support * added details * removed a console.log + added logUp * move test to folder * fixed canvas issue * added starter select tests * added some more test on starter-select * added battle-order tests * added battle-order tests * fixing Phaser RNG * ordering stats for better reading * fix tests for main * adapt battle-order test to be more readable * fix merge * fix some errors and silent all errors from gameWrapper since it's not possible to avoid them * fix mocks to manage childs & stuffs * added some docs * fix achievement test * removed an unused file * separate misc tests to clean battle.test file * added a basic french lokalization test * added i18n where it needs to be used only * revers extracted method * removed unused method * removed handler fetch since we do not test anything server related * fix test with handlers removed * added intrepid sword test * fix enum exp party --------- Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt>
2024-06-07 22:33:45 +00:00
}
[Testing] Flexible Testing Wrapper for Phaser-Based Battle-Scenes (#1908) * refactor executed code while importing and initializing all of these in loading-scene * reset to main * fix server url * added rule no-trailing-spaces * made progress * test somme data from a session save is working * trying to launch a battle * added fetch wrapper to load data locally * trying to mockAllSettled * pushPhase & shiftPhase * check integrity of exported session * set toke + loggedInUser in tests * progress on starting new battle * tring to test phase but it's async * mocking fetch * working mock fetch * need to handle pile of data * attempt to use real phaser classes * reorder overrides * refactored to use some real classes from phaser * removed useless things * started to work on some container mock * finished the mockContainer time to add some logic * some more mock containers * removed addMethods since there is the mock classes now * commented issues * attempt to create mockTextureManager * fix tests * mockSprite & mockText * yes but not really * yes but not really * fix tutorial callback * reached mode title * added achievement tests * fix test achievements with current state of mock * correct sequence loading for BattleScene with mockLoader ! * deep dive into next step * working wait until starter selection screen * added newGame method into wrapper * expect to save_slot * trying to manage pokemon sprite for getAll without success yet * added test for egg output * fixed egg test for June * fix tests + locate next issue to fix * we are in battle baby * added new game in one-line * export is working but export only what's in the fetch * fix start game as guest * refactored how we start a battle + cleanup * overrided mewtwo but issue with currentBattle * refactor: rename InitAchievements to initAchievements * added missing mock method * override level and pokemon forms working as intended * bringToTop Obj * remove launch battle in achivement test * fix getIndex when same pokemon * can run all tests * first attack, faint, and shop modifiers, MockClock * on method for container * added doAttack one-liner * one-line export data * removed throw error * feat: Make `scenes` property of `GameWrapper` class public The `scenes` property of the `GameWrapper` class was changed from private to public. This change allows external access to the `scenes` map, which is used to store Phaser scenes. This modification was made to enable easier manipulation and interaction with the scenes in the game. * correction * removed CanvasRenderer * added a param to remove console.log and added a param to preven scene create call * fix encounter wave 30 when it's a trainer * test double-battle * test fight without KO * test double fight no ko * fix crashing texture + added Text wrapper to log fight * fix tests on boss - trainer - rival * chore: Refactor BattleScene initialization and add new phases Refactor the BattleScene initialization code to remove unnecessary delay and improve performance. Also, add new phases for the title and unavailable states to enhance the game experience. * rework of Game tests * skipFn is working * added onNextPrompt and restore Og Start * better newGame * added skipFN in remove * not yet working test but updated interceptors * do attack work but not on PostSummonPhase phase when there is mention of silcoon and wurmple * error located, it's just a double fight, i was not there yet * single OHKO & double no OHKO * added expirationFn into next prompt * all tests are passing * working test on non damaging move from opponent * cleaned a bit * removed phaser initialisation on every tests * renamed test file * added load system data * added some ability support * added onKill & onSummon abilities test * removed useless test + cleanup * removed useless test + cleanup * fixed tests after merge main * added itemHeld endTurn trigger test (toxic orb) * added runFrom..To * added mustRun to assert currentPhase * added no-miss move to test things * cleaner restore mock * fix test * fix moxie test + game speed * improve test speed * added onOurself and onOpponent mvoe test * added onDamage test for tackle * removed timeout in intervals to run tests faster * cleanup * added never crit override + separate file per test + remove randomness in randBattleSeedInt * move folders * better org * renamed itemHeld folder to items * fix deploy.yml * cleanup * simplified the gameManager start battle and allow single pokemon in party * remove the need of mode development * added input handler to test inputs + remove time from phaser into inputController * added keyboard support * added fakeMobile support * added details * removed a console.log + added logUp * move test to folder * fixed canvas issue * added starter select tests * added some more test on starter-select * added battle-order tests * added battle-order tests * fixing Phaser RNG * ordering stats for better reading * fix tests for main * adapt battle-order test to be more readable * fix merge * fix some errors and silent all errors from gameWrapper since it's not possible to avoid them * fix mocks to manage childs & stuffs * added some docs * fix achievement test * removed an unused file * separate misc tests to clean battle.test file * added a basic french lokalization test * added i18n where it needs to be used only * revers extracted method * removed unused method * removed handler fetch since we do not test anything server related * fix test with handlers removed * added intrepid sword test * fix enum exp party --------- Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt>
2024-06-07 22:33:45 +00:00
let starterGender = starter.species.malePercent !== null
? !starterProps.female ? Gender.MALE : Gender.FEMALE
: Gender.GENDERLESS;
if (Overrides.GENDER_OVERRIDE !== null) {
starterGender = Overrides.GENDER_OVERRIDE;
}
const starterIvs = this.scene.gameData.dexData[starter.species.speciesId].ivs.slice(0);
const starterPokemon = this.scene.addPlayerPokemon(starter.species, this.scene.gameMode.getStartingLevel(), starter.abilityIndex, starterFormIndex, starterGender, starterProps.shiny, starterProps.variant, starterIvs, starter.nature);
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
starter.moveset && starterPokemon.tryPopulateMoveset(starter.moveset);
[Testing] Flexible Testing Wrapper for Phaser-Based Battle-Scenes (#1908) * refactor executed code while importing and initializing all of these in loading-scene * reset to main * fix server url * added rule no-trailing-spaces * made progress * test somme data from a session save is working * trying to launch a battle * added fetch wrapper to load data locally * trying to mockAllSettled * pushPhase & shiftPhase * check integrity of exported session * set toke + loggedInUser in tests * progress on starting new battle * tring to test phase but it's async * mocking fetch * working mock fetch * need to handle pile of data * attempt to use real phaser classes * reorder overrides * refactored to use some real classes from phaser * removed useless things * started to work on some container mock * finished the mockContainer time to add some logic * some more mock containers * removed addMethods since there is the mock classes now * commented issues * attempt to create mockTextureManager * fix tests * mockSprite & mockText * yes but not really * yes but not really * fix tutorial callback * reached mode title * added achievement tests * fix test achievements with current state of mock * correct sequence loading for BattleScene with mockLoader ! * deep dive into next step * working wait until starter selection screen * added newGame method into wrapper * expect to save_slot * trying to manage pokemon sprite for getAll without success yet * added test for egg output * fixed egg test for June * fix tests + locate next issue to fix * we are in battle baby * added new game in one-line * export is working but export only what's in the fetch * fix start game as guest * refactored how we start a battle + cleanup * overrided mewtwo but issue with currentBattle * refactor: rename InitAchievements to initAchievements * added missing mock method * override level and pokemon forms working as intended * bringToTop Obj * remove launch battle in achivement test * fix getIndex when same pokemon * can run all tests * first attack, faint, and shop modifiers, MockClock * on method for container * added doAttack one-liner * one-line export data * removed throw error * feat: Make `scenes` property of `GameWrapper` class public The `scenes` property of the `GameWrapper` class was changed from private to public. This change allows external access to the `scenes` map, which is used to store Phaser scenes. This modification was made to enable easier manipulation and interaction with the scenes in the game. * correction * removed CanvasRenderer * added a param to remove console.log and added a param to preven scene create call * fix encounter wave 30 when it's a trainer * test double-battle * test fight without KO * test double fight no ko * fix crashing texture + added Text wrapper to log fight * fix tests on boss - trainer - rival * chore: Refactor BattleScene initialization and add new phases Refactor the BattleScene initialization code to remove unnecessary delay and improve performance. Also, add new phases for the title and unavailable states to enhance the game experience. * rework of Game tests * skipFn is working * added onNextPrompt and restore Og Start * better newGame * added skipFN in remove * not yet working test but updated interceptors * do attack work but not on PostSummonPhase phase when there is mention of silcoon and wurmple * error located, it's just a double fight, i was not there yet * single OHKO & double no OHKO * added expirationFn into next prompt * all tests are passing * working test on non damaging move from opponent * cleaned a bit * removed phaser initialisation on every tests * renamed test file * added load system data * added some ability support * added onKill & onSummon abilities test * removed useless test + cleanup * removed useless test + cleanup * fixed tests after merge main * added itemHeld endTurn trigger test (toxic orb) * added runFrom..To * added mustRun to assert currentPhase * added no-miss move to test things * cleaner restore mock * fix test * fix moxie test + game speed * improve test speed * added onOurself and onOpponent mvoe test * added onDamage test for tackle * removed timeout in intervals to run tests faster * cleanup * added never crit override + separate file per test + remove randomness in randBattleSeedInt * move folders * better org * renamed itemHeld folder to items * fix deploy.yml * cleanup * simplified the gameManager start battle and allow single pokemon in party * remove the need of mode development * added input handler to test inputs + remove time from phaser into inputController * added keyboard support * added fakeMobile support * added details * removed a console.log + added logUp * move test to folder * fixed canvas issue * added starter select tests * added some more test on starter-select * added battle-order tests * added battle-order tests * fixing Phaser RNG * ordering stats for better reading * fix tests for main * adapt battle-order test to be more readable * fix merge * fix some errors and silent all errors from gameWrapper since it's not possible to avoid them * fix mocks to manage childs & stuffs * added some docs * fix achievement test * removed an unused file * separate misc tests to clean battle.test file * added a basic french lokalization test * added i18n where it needs to be used only * revers extracted method * removed unused method * removed handler fetch since we do not test anything server related * fix test with handlers removed * added intrepid sword test * fix enum exp party --------- Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt>
2024-06-07 22:33:45 +00:00
if (starter.passive) {
starterPokemon.passive = true;
}
starterPokemon.luck = this.scene.gameData.getDexAttrLuck(this.scene.gameData.dexData[starter.species.speciesId].caughtAttr);
if (starter.pokerus) {
starterPokemon.pokerus = true;
}
if (starter.nickname) {
starterPokemon.nickname = starter.nickname;
}
[Testing] Flexible Testing Wrapper for Phaser-Based Battle-Scenes (#1908) * refactor executed code while importing and initializing all of these in loading-scene * reset to main * fix server url * added rule no-trailing-spaces * made progress * test somme data from a session save is working * trying to launch a battle * added fetch wrapper to load data locally * trying to mockAllSettled * pushPhase & shiftPhase * check integrity of exported session * set toke + loggedInUser in tests * progress on starting new battle * tring to test phase but it's async * mocking fetch * working mock fetch * need to handle pile of data * attempt to use real phaser classes * reorder overrides * refactored to use some real classes from phaser * removed useless things * started to work on some container mock * finished the mockContainer time to add some logic * some more mock containers * removed addMethods since there is the mock classes now * commented issues * attempt to create mockTextureManager * fix tests * mockSprite & mockText * yes but not really * yes but not really * fix tutorial callback * reached mode title * added achievement tests * fix test achievements with current state of mock * correct sequence loading for BattleScene with mockLoader ! * deep dive into next step * working wait until starter selection screen * added newGame method into wrapper * expect to save_slot * trying to manage pokemon sprite for getAll without success yet * added test for egg output * fixed egg test for June * fix tests + locate next issue to fix * we are in battle baby * added new game in one-line * export is working but export only what's in the fetch * fix start game as guest * refactored how we start a battle + cleanup * overrided mewtwo but issue with currentBattle * refactor: rename InitAchievements to initAchievements * added missing mock method * override level and pokemon forms working as intended * bringToTop Obj * remove launch battle in achivement test * fix getIndex when same pokemon * can run all tests * first attack, faint, and shop modifiers, MockClock * on method for container * added doAttack one-liner * one-line export data * removed throw error * feat: Make `scenes` property of `GameWrapper` class public The `scenes` property of the `GameWrapper` class was changed from private to public. This change allows external access to the `scenes` map, which is used to store Phaser scenes. This modification was made to enable easier manipulation and interaction with the scenes in the game. * correction * removed CanvasRenderer * added a param to remove console.log and added a param to preven scene create call * fix encounter wave 30 when it's a trainer * test double-battle * test fight without KO * test double fight no ko * fix crashing texture + added Text wrapper to log fight * fix tests on boss - trainer - rival * chore: Refactor BattleScene initialization and add new phases Refactor the BattleScene initialization code to remove unnecessary delay and improve performance. Also, add new phases for the title and unavailable states to enhance the game experience. * rework of Game tests * skipFn is working * added onNextPrompt and restore Og Start * better newGame * added skipFN in remove * not yet working test but updated interceptors * do attack work but not on PostSummonPhase phase when there is mention of silcoon and wurmple * error located, it's just a double fight, i was not there yet * single OHKO & double no OHKO * added expirationFn into next prompt * all tests are passing * working test on non damaging move from opponent * cleaned a bit * removed phaser initialisation on every tests * renamed test file * added load system data * added some ability support * added onKill & onSummon abilities test * removed useless test + cleanup * removed useless test + cleanup * fixed tests after merge main * added itemHeld endTurn trigger test (toxic orb) * added runFrom..To * added mustRun to assert currentPhase * added no-miss move to test things * cleaner restore mock * fix test * fix moxie test + game speed * improve test speed * added onOurself and onOpponent mvoe test * added onDamage test for tackle * removed timeout in intervals to run tests faster * cleanup * added never crit override + separate file per test + remove randomness in randBattleSeedInt * move folders * better org * renamed itemHeld folder to items * fix deploy.yml * cleanup * simplified the gameManager start battle and allow single pokemon in party * remove the need of mode development * added input handler to test inputs + remove time from phaser into inputController * added keyboard support * added fakeMobile support * added details * removed a console.log + added logUp * move test to folder * fixed canvas issue * added starter select tests * added some more test on starter-select * added battle-order tests * added battle-order tests * fixing Phaser RNG * ordering stats for better reading * fix tests for main * adapt battle-order test to be more readable * fix merge * fix some errors and silent all errors from gameWrapper since it's not possible to avoid them * fix mocks to manage childs & stuffs * added some docs * fix achievement test * removed an unused file * separate misc tests to clean battle.test file * added a basic french lokalization test * added i18n where it needs to be used only * revers extracted method * removed unused method * removed handler fetch since we do not test anything server related * fix test with handlers removed * added intrepid sword test * fix enum exp party --------- Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt>
2024-06-07 22:33:45 +00:00
if (this.scene.gameMode.isSplicedOnly) {
starterPokemon.generateFusionSpecies(true);
}
starterPokemon.setVisible(false);
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
applyChallenges(this.scene.gameMode, ChallengeType.STARTER_MODIFY, starterPokemon);
[Testing] Flexible Testing Wrapper for Phaser-Based Battle-Scenes (#1908) * refactor executed code while importing and initializing all of these in loading-scene * reset to main * fix server url * added rule no-trailing-spaces * made progress * test somme data from a session save is working * trying to launch a battle * added fetch wrapper to load data locally * trying to mockAllSettled * pushPhase & shiftPhase * check integrity of exported session * set toke + loggedInUser in tests * progress on starting new battle * tring to test phase but it's async * mocking fetch * working mock fetch * need to handle pile of data * attempt to use real phaser classes * reorder overrides * refactored to use some real classes from phaser * removed useless things * started to work on some container mock * finished the mockContainer time to add some logic * some more mock containers * removed addMethods since there is the mock classes now * commented issues * attempt to create mockTextureManager * fix tests * mockSprite & mockText * yes but not really * yes but not really * fix tutorial callback * reached mode title * added achievement tests * fix test achievements with current state of mock * correct sequence loading for BattleScene with mockLoader ! * deep dive into next step * working wait until starter selection screen * added newGame method into wrapper * expect to save_slot * trying to manage pokemon sprite for getAll without success yet * added test for egg output * fixed egg test for June * fix tests + locate next issue to fix * we are in battle baby * added new game in one-line * export is working but export only what's in the fetch * fix start game as guest * refactored how we start a battle + cleanup * overrided mewtwo but issue with currentBattle * refactor: rename InitAchievements to initAchievements * added missing mock method * override level and pokemon forms working as intended * bringToTop Obj * remove launch battle in achivement test * fix getIndex when same pokemon * can run all tests * first attack, faint, and shop modifiers, MockClock * on method for container * added doAttack one-liner * one-line export data * removed throw error * feat: Make `scenes` property of `GameWrapper` class public The `scenes` property of the `GameWrapper` class was changed from private to public. This change allows external access to the `scenes` map, which is used to store Phaser scenes. This modification was made to enable easier manipulation and interaction with the scenes in the game. * correction * removed CanvasRenderer * added a param to remove console.log and added a param to preven scene create call * fix encounter wave 30 when it's a trainer * test double-battle * test fight without KO * test double fight no ko * fix crashing texture + added Text wrapper to log fight * fix tests on boss - trainer - rival * chore: Refactor BattleScene initialization and add new phases Refactor the BattleScene initialization code to remove unnecessary delay and improve performance. Also, add new phases for the title and unavailable states to enhance the game experience. * rework of Game tests * skipFn is working * added onNextPrompt and restore Og Start * better newGame * added skipFN in remove * not yet working test but updated interceptors * do attack work but not on PostSummonPhase phase when there is mention of silcoon and wurmple * error located, it's just a double fight, i was not there yet * single OHKO & double no OHKO * added expirationFn into next prompt * all tests are passing * working test on non damaging move from opponent * cleaned a bit * removed phaser initialisation on every tests * renamed test file * added load system data * added some ability support * added onKill & onSummon abilities test * removed useless test + cleanup * removed useless test + cleanup * fixed tests after merge main * added itemHeld endTurn trigger test (toxic orb) * added runFrom..To * added mustRun to assert currentPhase * added no-miss move to test things * cleaner restore mock * fix test * fix moxie test + game speed * improve test speed * added onOurself and onOpponent mvoe test * added onDamage test for tackle * removed timeout in intervals to run tests faster * cleanup * added never crit override + separate file per test + remove randomness in randBattleSeedInt * move folders * better org * renamed itemHeld folder to items * fix deploy.yml * cleanup * simplified the gameManager start battle and allow single pokemon in party * remove the need of mode development * added input handler to test inputs + remove time from phaser into inputController * added keyboard support * added fakeMobile support * added details * removed a console.log + added logUp * move test to folder * fixed canvas issue * added starter select tests * added some more test on starter-select * added battle-order tests * added battle-order tests * fixing Phaser RNG * ordering stats for better reading * fix tests for main * adapt battle-order test to be more readable * fix merge * fix some errors and silent all errors from gameWrapper since it's not possible to avoid them * fix mocks to manage childs & stuffs * added some docs * fix achievement test * removed an unused file * separate misc tests to clean battle.test file * added a basic french lokalization test * added i18n where it needs to be used only * revers extracted method * removed unused method * removed handler fetch since we do not test anything server related * fix test with handlers removed * added intrepid sword test * fix enum exp party --------- Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt>
2024-06-07 22:33:45 +00:00
party.push(starterPokemon);
loadPokemonAssets.push(starterPokemon.loadAssets());
});
overrideModifiers(this.scene);
overrideHeldItems(this.scene, party[0]);
Promise.all(loadPokemonAssets).then(() => {
SoundFade.fadeOut(this.scene, this.scene.sound.get("menu"), 500, true);
this.scene.time.delayedCall(500, () => this.scene.playBgm());
if (this.scene.gameMode.isClassic) {
this.scene.gameData.gameStats.classicSessionsPlayed++;
} else {
this.scene.gameData.gameStats.endlessSessionsPlayed++;
}
this.scene.newBattle();
this.scene.arena.init();
this.scene.sessionPlayTime = 0;
this.scene.lastSavePlayTime = 0;
// Ensures Keldeo (or any future Pokemon that have this type of form change) starts in the correct form
this.scene.getParty().forEach((p: PlayerPokemon) => {
this.scene.triggerPokemonFormChange(p, SpeciesFormChangeMoveLearnedTrigger);
});
[Testing] Flexible Testing Wrapper for Phaser-Based Battle-Scenes (#1908) * refactor executed code while importing and initializing all of these in loading-scene * reset to main * fix server url * added rule no-trailing-spaces * made progress * test somme data from a session save is working * trying to launch a battle * added fetch wrapper to load data locally * trying to mockAllSettled * pushPhase & shiftPhase * check integrity of exported session * set toke + loggedInUser in tests * progress on starting new battle * tring to test phase but it's async * mocking fetch * working mock fetch * need to handle pile of data * attempt to use real phaser classes * reorder overrides * refactored to use some real classes from phaser * removed useless things * started to work on some container mock * finished the mockContainer time to add some logic * some more mock containers * removed addMethods since there is the mock classes now * commented issues * attempt to create mockTextureManager * fix tests * mockSprite & mockText * yes but not really * yes but not really * fix tutorial callback * reached mode title * added achievement tests * fix test achievements with current state of mock * correct sequence loading for BattleScene with mockLoader ! * deep dive into next step * working wait until starter selection screen * added newGame method into wrapper * expect to save_slot * trying to manage pokemon sprite for getAll without success yet * added test for egg output * fixed egg test for June * fix tests + locate next issue to fix * we are in battle baby * added new game in one-line * export is working but export only what's in the fetch * fix start game as guest * refactored how we start a battle + cleanup * overrided mewtwo but issue with currentBattle * refactor: rename InitAchievements to initAchievements * added missing mock method * override level and pokemon forms working as intended * bringToTop Obj * remove launch battle in achivement test * fix getIndex when same pokemon * can run all tests * first attack, faint, and shop modifiers, MockClock * on method for container * added doAttack one-liner * one-line export data * removed throw error * feat: Make `scenes` property of `GameWrapper` class public The `scenes` property of the `GameWrapper` class was changed from private to public. This change allows external access to the `scenes` map, which is used to store Phaser scenes. This modification was made to enable easier manipulation and interaction with the scenes in the game. * correction * removed CanvasRenderer * added a param to remove console.log and added a param to preven scene create call * fix encounter wave 30 when it's a trainer * test double-battle * test fight without KO * test double fight no ko * fix crashing texture + added Text wrapper to log fight * fix tests on boss - trainer - rival * chore: Refactor BattleScene initialization and add new phases Refactor the BattleScene initialization code to remove unnecessary delay and improve performance. Also, add new phases for the title and unavailable states to enhance the game experience. * rework of Game tests * skipFn is working * added onNextPrompt and restore Og Start * better newGame * added skipFN in remove * not yet working test but updated interceptors * do attack work but not on PostSummonPhase phase when there is mention of silcoon and wurmple * error located, it's just a double fight, i was not there yet * single OHKO & double no OHKO * added expirationFn into next prompt * all tests are passing * working test on non damaging move from opponent * cleaned a bit * removed phaser initialisation on every tests * renamed test file * added load system data * added some ability support * added onKill & onSummon abilities test * removed useless test + cleanup * removed useless test + cleanup * fixed tests after merge main * added itemHeld endTurn trigger test (toxic orb) * added runFrom..To * added mustRun to assert currentPhase * added no-miss move to test things * cleaner restore mock * fix test * fix moxie test + game speed * improve test speed * added onOurself and onOpponent mvoe test * added onDamage test for tackle * removed timeout in intervals to run tests faster * cleanup * added never crit override + separate file per test + remove randomness in randBattleSeedInt * move folders * better org * renamed itemHeld folder to items * fix deploy.yml * cleanup * simplified the gameManager start battle and allow single pokemon in party * remove the need of mode development * added input handler to test inputs + remove time from phaser into inputController * added keyboard support * added fakeMobile support * added details * removed a console.log + added logUp * move test to folder * fixed canvas issue * added starter select tests * added some more test on starter-select * added battle-order tests * added battle-order tests * fixing Phaser RNG * ordering stats for better reading * fix tests for main * adapt battle-order test to be more readable * fix merge * fix some errors and silent all errors from gameWrapper since it's not possible to avoid them * fix mocks to manage childs & stuffs * added some docs * fix achievement test * removed an unused file * separate misc tests to clean battle.test file * added a basic french lokalization test * added i18n where it needs to be used only * revers extracted method * removed unused method * removed handler fetch since we do not test anything server related * fix test with handlers removed * added intrepid sword test * fix enum exp party --------- Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt>
2024-06-07 22:33:45 +00:00
this.end();
});
}
2023-04-10 18:12:01 +00:00
}
export class BattlePhase extends Phase {
constructor(scene: BattleScene) {
super(scene);
}
showEnemyTrainer(trainerSlot: TrainerSlot = TrainerSlot.NONE): void {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
const sprites = this.scene.currentBattle.trainer?.getSprites()!; // TODO: is this bang correct?
const tintSprites = this.scene.currentBattle.trainer?.getTintSprites()!; // TODO: is this bang correct?
for (let i = 0; i < sprites.length; i++) {
const visible = !trainerSlot || !i === (trainerSlot === TrainerSlot.TRAINER) || sprites.length < 2;
[sprites[i], tintSprites[i]].map(sprite => {
if (visible) {
sprite.x = trainerSlot || sprites.length < 2 ? 0 : i ? 16 : -16;
}
sprite.setVisible(visible);
sprite.clearTint();
});
sprites[i].setVisible(visible);
tintSprites[i].setVisible(visible);
sprites[i].clearTint();
tintSprites[i].clearTint();
}
this.scene.tweens.add({
targets: this.scene.currentBattle.trainer,
x: "-=16",
y: "+=16",
alpha: 1,
ease: "Sine.easeInOut",
duration: 750
});
}
hideEnemyTrainer(): void {
this.scene.tweens.add({
targets: this.scene.currentBattle.trainer,
x: "+=16",
y: "-=16",
alpha: 0,
ease: "Sine.easeInOut",
duration: 750
});
}
}
type PokemonFunc = (pokemon: Pokemon) => void;
export abstract class FieldPhase extends BattlePhase {
getOrder(): BattlerIndex[] {
const playerField = this.scene.getPlayerField().filter(p => p.isActive()) as Pokemon[];
const enemyField = this.scene.getEnemyField().filter(p => p.isActive()) as Pokemon[];
// We shuffle the list before sorting so speed ties produce random results
let orderedTargets: Pokemon[] = playerField.concat(enemyField);
// 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);
}, this.scene.currentBattle.turn, this.scene.waveSeed);
orderedTargets.sort((a: Pokemon, b: Pokemon) => {
const aSpeed = a?.getBattleStat(Stat.SPD) || 0;
const bSpeed = b?.getBattleStat(Stat.SPD) || 0;
return bSpeed - aSpeed;
});
const speedReversed = new Utils.BooleanHolder(false);
this.scene.arena.applyTags(TrickRoomTag, speedReversed);
if (speedReversed.value) {
orderedTargets = orderedTargets.reverse();
}
return orderedTargets.map(t => t.getFieldIndex() + (!t.isPlayer() ? BattlerIndex.ENEMY : 0));
}
executeForAll(func: PokemonFunc): void {
const field = this.scene.getField(true).filter(p => p.summonData);
field.forEach(pokemon => func(pokemon));
}
}
export abstract class PokemonPhase extends FieldPhase {
2023-12-04 05:09:38 +00:00
protected battlerIndex: BattlerIndex | integer;
public player: boolean;
public fieldIndex: integer;
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
constructor(scene: BattleScene, battlerIndex?: BattlerIndex | integer) {
super(scene);
if (battlerIndex === undefined) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
battlerIndex = scene.getField().find(p => p?.isActive())!.getBattlerIndex(); // TODO: is the bang correct here?
}
this.battlerIndex = battlerIndex;
this.player = battlerIndex < 2;
this.fieldIndex = battlerIndex % 2;
}
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
getPokemon(): Pokemon {
if (this.battlerIndex > BattlerIndex.ENEMY_2) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
return this.scene.getPokemonById(this.battlerIndex)!; //TODO: is this bang correct?
}
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
return this.scene.getField()[this.battlerIndex]!; //TODO: is this bang correct?
}
}
export abstract class PartyMemberPokemonPhase extends FieldPhase {
protected partyMemberIndex: integer;
protected fieldIndex: integer;
2023-10-07 20:08:33 +00:00
protected player: boolean;
2023-10-07 20:08:33 +00:00
constructor(scene: BattleScene, partyMemberIndex: integer, player: boolean) {
super(scene);
this.partyMemberIndex = partyMemberIndex;
this.fieldIndex = partyMemberIndex < this.scene.currentBattle.getBattlerCount()
? partyMemberIndex
: -1;
2023-10-07 20:08:33 +00:00
this.player = player;
}
2023-10-07 20:08:33 +00:00
getParty(): Pokemon[] {
return this.player ? this.scene.getParty() : this.scene.getEnemyParty();
}
getPokemon(): Pokemon {
return this.getParty()[this.partyMemberIndex];
}
}
export abstract class PlayerPartyMemberPokemonPhase extends PartyMemberPokemonPhase {
constructor(scene: BattleScene, partyMemberIndex: integer) {
super(scene, partyMemberIndex, true);
}
getPlayerPokemon(): PlayerPokemon {
return super.getPokemon() as PlayerPokemon;
}
}
export abstract class EnemyPartyMemberPokemonPhase extends PartyMemberPokemonPhase {
constructor(scene: BattleScene, partyMemberIndex: integer) {
super(scene, partyMemberIndex, false);
}
getEnemyPokemon(): EnemyPokemon {
return super.getPokemon() as EnemyPokemon;
}
}
2023-04-10 18:12:01 +00:00
export class EncounterPhase extends BattlePhase {
2023-04-28 19:03:42 +00:00
private loaded: boolean;
constructor(scene: BattleScene, loaded?: boolean) {
2023-04-10 18:12:01 +00:00
super(scene);
2023-04-28 19:03:42 +00:00
this.loaded = !!loaded;
2023-04-10 18:12:01 +00:00
}
start() {
super.start();
2024-05-10 10:42:28 +00:00
this.scene.updateGameInfo();
2024-01-12 01:27:50 +00:00
this.scene.initSession();
this.scene.eventTarget.dispatchEvent(new EncounterPhaseEvent());
// Failsafe if players somehow skip floor 200 in classic mode
if (this.scene.gameMode.isClassic && this.scene.currentBattle.waveIndex > 200) {
this.scene.unshiftPhase(new GameOverPhase(this.scene));
}
2024-08-13 20:49:06 +00:00
const loadEnemyAssets: Promise<void>[] = [];
2023-04-10 18:12:01 +00:00
const battle = this.scene.currentBattle;
let totalBst = 0;
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
battle.enemyLevels?.forEach((level, e) => {
if (!this.loaded) {
if (battle.battleType === BattleType.TRAINER) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
battle.enemyParty[e] = battle.trainer?.genPartyMember(e)!; // TODO:: is the bang correct here?
} else {
2023-11-08 23:36:30 +00:00
const enemySpecies = this.scene.randomSpecies(battle.waveIndex, level, true);
battle.enemyParty[e] = this.scene.addEnemyPokemon(enemySpecies, level, TrainerSlot.NONE, !!this.scene.getEncounterBossSegments(battle.waveIndex, level, enemySpecies));
if (this.scene.currentBattle.battleSpec === BattleSpec.FINAL_BOSS) {
2024-02-20 03:58:25 +00:00
battle.enemyParty[e].ivs = new Array(6).fill(31);
}
2024-01-06 03:24:05 +00:00
this.scene.getParty().slice(0, !battle.double ? 1 : 2).reverse().forEach(playerPokemon => {
applyAbAttrs(SyncEncounterNatureAbAttr, playerPokemon, null, battle.enemyParty[e]);
});
}
}
2023-10-07 20:08:33 +00:00
const enemyPokemon = this.scene.getEnemyParty()[e];
if (e < (battle.double ? 2 : 1)) {
enemyPokemon.setX(-66 + enemyPokemon.getFieldPositionOffset()[0]);
enemyPokemon.resetSummonData();
}
2023-04-18 05:32:26 +00:00
if (!this.loaded) {
this.scene.gameData.setPokemonSeen(enemyPokemon, true, battle.battleType === BattleType.TRAINER);
}
if (enemyPokemon.species.speciesId === Species.ETERNATUS) {
2024-03-14 20:26:57 +00:00
if (this.scene.gameMode.isClassic && (battle.battleSpec === BattleSpec.FINAL_BOSS || this.scene.gameMode.isWaveFinal(battle.waveIndex))) {
2024-02-28 03:50:27 +00:00
if (battle.battleSpec !== BattleSpec.FINAL_BOSS) {
enemyPokemon.formIndex = 1;
2024-02-28 03:50:27 +00:00
enemyPokemon.updateScale();
}
enemyPokemon.setBoss();
2024-02-28 03:50:27 +00:00
} else if (!(battle.waveIndex % 1000)) {
enemyPokemon.formIndex = 1;
2024-02-28 03:50:27 +00:00
enemyPokemon.updateScale();
}
2024-01-08 04:17:24 +00:00
}
2024-05-23 23:45:04 +00:00
totalBst += enemyPokemon.getSpeciesForm().baseTotal;
2023-10-24 03:20:05 +00:00
loadEnemyAssets.push(enemyPokemon.loadAssets());
2024-05-23 23:45:04 +00:00
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
console.log(getPokemonNameWithAffix(enemyPokemon), enemyPokemon.species.speciesId, enemyPokemon.stats);
});
2023-04-10 18:12:01 +00:00
if (this.scene.getParty().filter(p => p.isShiny()).length === 6) {
this.scene.validateAchv(achvs.SHINY_PARTY);
}
if (battle.battleType === BattleType.TRAINER) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
loadEnemyAssets.push(battle.trainer?.loadAssets().then(() => battle.trainer?.initSprite())!); // TODO: is this bang correct?
} else {
// This block only applies for double battles to init the boss segments (idk why it's split up like this)
if (battle.enemyParty.filter(p => p.isBoss()).length > 1) {
for (const enemyPokemon of battle.enemyParty) {
// If the enemy pokemon is a boss and wasn't populated from data source, then set it up
if (enemyPokemon.isBoss() && !enemyPokemon.isPopulatedFromDataSource) {
enemyPokemon.setBoss(true, Math.ceil(enemyPokemon.bossSegments * (enemyPokemon.getSpeciesForm().baseTotal / totalBst)));
2024-03-29 14:29:19 +00:00
enemyPokemon.initBattleInfo();
}
}
}
}
2023-10-07 20:08:33 +00:00
Promise.all(loadEnemyAssets).then(() => {
2023-10-07 20:08:33 +00:00
battle.enemyParty.forEach((enemyPokemon, e) => {
if (e < (battle.double ? 2 : 1)) {
if (battle.battleType === BattleType.WILD) {
this.scene.field.add(enemyPokemon);
battle.seenEnemyPartyMemberIds.add(enemyPokemon.id);
2023-10-07 20:08:33 +00:00
const playerPokemon = this.scene.getPlayerPokemon();
if (playerPokemon?.visible) {
2023-10-07 20:08:33 +00:00
this.scene.field.moveBelow(enemyPokemon as Pokemon, playerPokemon);
}
2023-10-07 20:08:33 +00:00
enemyPokemon.tint(0, 0.5);
} else if (battle.battleType === BattleType.TRAINER) {
enemyPokemon.setVisible(false);
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.currentBattle.trainer?.tint(0, 0.5);
2023-10-07 20:08:33 +00:00
}
if (battle.double) {
2023-10-07 20:08:33 +00:00
enemyPokemon.setFieldPosition(e ? FieldPosition.RIGHT : FieldPosition.LEFT);
}
2023-10-07 20:08:33 +00:00
}
});
2023-04-10 18:12:01 +00:00
2023-04-28 19:03:42 +00:00
if (!this.loaded) {
regenerateModifierPoolThresholds(this.scene.getEnemyField(), battle.battleType === BattleType.TRAINER ? ModifierPoolType.TRAINER : ModifierPoolType.WILD);
2023-04-28 19:03:42 +00:00
this.scene.generateEnemyModifiers();
}
2023-04-20 23:44:56 +00:00
2023-04-28 19:03:42 +00:00
this.scene.ui.setMode(Mode.MESSAGE).then(() => {
2023-11-13 04:47:04 +00:00
if (!this.loaded) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
//@ts-ignore
this.scene.gameData.saveAll(this.scene, true, battle.waveIndex % 10 === 1 || this.scene.lastSavePlayTime >= 300).then(success => { // TODO: get rid of ts-ignore
this.scene.disableMenu = false;
if (!success) {
2023-12-30 23:41:25 +00:00
return this.scene.reset(true);
}
2024-05-13 03:01:05 +00:00
this.doEncounter();
2023-12-30 23:41:25 +00:00
});
} else {
2023-12-30 23:41:25 +00:00
this.doEncounter();
}
2023-04-28 19:03:42 +00:00
});
2023-04-10 18:12:01 +00:00
});
}
doEncounter() {
this.scene.playBgm(undefined, true);
2023-12-16 15:15:25 +00:00
this.scene.updateModifiers(false);
this.scene.setFieldScale(1);
2023-12-16 15:15:25 +00:00
2023-11-29 02:35:52 +00:00
/*if (startingWave > 10) {
2023-05-30 13:46:42 +00:00
for (let m = 0; m < Math.min(Math.floor(startingWave / 10), 99); m++)
this.scene.addModifier(getPlayerModifierTypeOptionsForWave((m + 1) * 10, 1, this.scene.getParty())[0].type.newModifier(), true);
this.scene.updateModifiers(true);
2023-11-29 02:35:52 +00:00
}*/
for (const pokemon of this.scene.getParty()) {
if (pokemon) {
2023-11-29 02:35:52 +00:00
pokemon.resetBattleData();
}
}
if (!this.loaded) {
this.scene.arena.trySetWeather(getRandomWeatherType(this.scene.arena), false);
}
const enemyField = this.scene.getEnemyField();
2023-04-10 18:12:01 +00:00
this.scene.tweens.add({
targets: [this.scene.arenaEnemy, this.scene.currentBattle.trainer, enemyField, this.scene.arenaPlayer, this.scene.trainer].flat(),
2023-10-07 20:08:33 +00:00
x: (_target, _key, value, fieldIndex: integer) => fieldIndex < 2 + (enemyField.length) ? value + 300 : value - 300,
2023-04-10 18:12:01 +00:00
duration: 2000,
onComplete: () => {
if (!this.tryOverrideForBattleSpec()) {
this.doEncounterCommon();
}
}
2023-04-10 18:12:01 +00:00
});
}
getEncounterMessage(): string {
const enemyField = this.scene.getEnemyField();
if (this.scene.currentBattle.battleSpec === BattleSpec.FINAL_BOSS) {
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
return i18next.t("battle:bossAppeared", { bossName: getPokemonNameWithAffix(enemyField[0])});
}
if (this.scene.currentBattle.battleType === BattleType.TRAINER) {
if (this.scene.currentBattle.double) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
return i18next.t("battle:trainerAppearedDouble", { trainerName: this.scene.currentBattle.trainer?.getName(TrainerSlot.NONE, true) });
} else {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
return i18next.t("battle:trainerAppeared", { trainerName: this.scene.currentBattle.trainer?.getName(TrainerSlot.NONE, true) });
}
}
return enemyField.length === 1
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
? i18next.t("battle:singleWildAppeared", { pokemonName: enemyField[0].getNameToRender() })
: i18next.t("battle:multiWildAppeared", { pokemonName1: enemyField[0].getNameToRender(), pokemonName2: enemyField[1].getNameToRender() });
}
doEncounterCommon(showEncounterMessage: boolean = true) {
2023-10-07 20:08:33 +00:00
const enemyField = this.scene.getEnemyField();
if (this.scene.currentBattle.battleType === BattleType.WILD) {
enemyField.forEach(enemyPokemon => {
enemyPokemon.untint(100, "Sine.easeOut");
2023-10-07 20:08:33 +00:00
enemyPokemon.cry();
enemyPokemon.showInfo();
if (enemyPokemon.isShiny()) {
this.scene.validateAchv(achvs.SEE_SHINY);
}
2023-10-07 20:08:33 +00:00
});
2024-02-15 04:25:12 +00:00
this.scene.updateFieldScale();
if (showEncounterMessage) {
this.scene.ui.showText(this.getEncounterMessage(), null, () => this.end(), 1500);
} else {
this.end();
}
2023-10-07 20:08:33 +00:00
} else if (this.scene.currentBattle.battleType === BattleType.TRAINER) {
const trainer = this.scene.currentBattle.trainer;
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
trainer?.untint(100, "Sine.easeOut");
trainer?.playAnim();
2024-05-23 23:45:04 +00:00
const doSummon = () => {
this.scene.currentBattle.started = true;
this.scene.playBgm(undefined);
this.scene.pbTray.showPbTray(this.scene.getParty());
this.scene.pbTrayEnemy.showPbTray(this.scene.getEnemyParty());
const doTrainerSummon = () => {
this.hideEnemyTrainer();
2023-12-02 15:30:23 +00:00
const availablePartyMembers = this.scene.getEnemyParty().filter(p => !p.isFainted()).length;
this.scene.unshiftPhase(new SummonPhase(this.scene, 0, false));
if (this.scene.currentBattle.double && availablePartyMembers > 1) {
this.scene.unshiftPhase(new SummonPhase(this.scene, 1, false));
}
this.end();
};
if (showEncounterMessage) {
this.scene.ui.showText(this.getEncounterMessage(), null, doTrainerSummon, 1500, true);
} else {
doTrainerSummon();
}
};
2024-05-23 23:45:04 +00:00
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
const encounterMessages = this.scene.currentBattle.trainer?.getEncounterMessages();
if (!encounterMessages?.length) {
doSummon();
} else {
let message: string;
this.scene.executeWithSeedOffset(() => message = Utils.randSeedItem(encounterMessages), this.scene.currentBattle.waveIndex);
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
message = message!; // tell TS compiler it's defined now
const showDialogueAndSummon = () => {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.ui.showDialogue(message, trainer?.getName(TrainerSlot.NONE, true), null, () => {
this.scene.charSprite.hide().then(() => this.scene.hideFieldOverlay(250).then(() => doSummon()));
});
};
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
if (this.scene.currentBattle.trainer?.config.hasCharSprite && !this.scene.ui.shouldSkipDialogue(message)) {
this.scene.showFieldOverlay(500).then(() => this.scene.charSprite.showCharacter(trainer?.getKey()!, getCharVariantFromDialogue(encounterMessages[0])).then(() => showDialogueAndSummon())); // TODO: is this bang correct?
} else {
showDialogueAndSummon();
}
}
2023-10-07 20:08:33 +00:00
}
}
2023-04-10 18:12:01 +00:00
end() {
const enemyField = this.scene.getEnemyField();
enemyField.forEach((enemyPokemon, e) => {
if (enemyPokemon.isShiny()) {
this.scene.unshiftPhase(new ShinySparklePhase(this.scene, BattlerIndex.ENEMY + e));
}
});
2023-11-12 17:49:06 +00:00
if (this.scene.currentBattle.battleType !== BattleType.TRAINER) {
enemyField.map(p => this.scene.pushConditionalPhase(new PostSummonPhase(this.scene, p.getBattlerIndex()), () => {
// if there is not a player party, we can't continue
if (!this.scene.getParty()?.length) {
return false;
}
// how many player pokemon are on the field ?
const pokemonsOnFieldCount = this.scene.getParty().filter(p => p.isOnField()).length;
// if it's a 2vs1, there will never be a 2nd pokemon on our field even
const requiredPokemonsOnField = Math.min(this.scene.getParty().filter((p) => !p.isFainted()).length, 2);
// if it's a double, there should be 2, otherwise 1
if (this.scene.currentBattle.double) {
return pokemonsOnFieldCount === requiredPokemonsOnField;
}
return pokemonsOnFieldCount === 1;
}));
2023-11-12 17:49:06 +00:00
const ivScannerModifier = this.scene.findModifier(m => m instanceof IvScannerModifier);
if (ivScannerModifier) {
2024-04-06 14:37:54 +00:00
enemyField.map(p => this.scene.pushPhase(new ScanIvsPhase(this.scene, p.getBattlerIndex(), Math.min(ivScannerModifier.getStackCount() * 2, 6))));
}
2023-11-12 17:49:06 +00:00
}
2023-12-02 15:30:23 +00:00
if (!this.loaded) {
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
const availablePartyMembers = this.scene.getParty().filter(p => p.isAllowedInBattle());
2023-12-02 15:30:23 +00:00
if (!availablePartyMembers[0].isOnField()) {
2023-12-02 15:30:23 +00:00
this.scene.pushPhase(new SummonPhase(this.scene, 0));
}
2023-12-02 15:30:23 +00:00
if (this.scene.currentBattle.double) {
if (availablePartyMembers.length > 1) {
this.scene.pushPhase(new ToggleDoublePositionPhase(this.scene, true));
if (!availablePartyMembers[1].isOnField()) {
2023-12-02 15:30:23 +00:00
this.scene.pushPhase(new SummonPhase(this.scene, 1));
}
2023-12-02 15:30:23 +00:00
}
} else {
if (availablePartyMembers.length > 1 && availablePartyMembers[1].isOnField()) {
2023-12-02 15:30:23 +00:00
this.scene.pushPhase(new ReturnPhase(this.scene, 1));
}
2023-12-02 15:30:23 +00:00
this.scene.pushPhase(new ToggleDoublePositionPhase(this.scene, false));
}
2024-05-23 23:45:04 +00:00
if (this.scene.currentBattle.battleType !== BattleType.TRAINER && (this.scene.currentBattle.waveIndex > 1 || !this.scene.gameMode.isDaily)) {
const minPartySize = this.scene.currentBattle.double ? 2 : 1;
if (availablePartyMembers.length > minPartySize) {
this.scene.pushPhase(new CheckSwitchPhase(this.scene, 0, this.scene.currentBattle.double));
if (this.scene.currentBattle.double) {
this.scene.pushPhase(new CheckSwitchPhase(this.scene, 1, this.scene.currentBattle.double));
}
}
2023-12-02 15:30:23 +00:00
}
}
2024-02-14 15:44:55 +00:00
handleTutorial(this.scene, Tutorial.Access_Menu).then(() => super.end());
2023-04-10 18:12:01 +00:00
}
tryOverrideForBattleSpec(): boolean {
switch (this.scene.currentBattle.battleSpec) {
case BattleSpec.FINAL_BOSS:
const enemy = this.scene.getEnemyPokemon();
this.scene.ui.showText(this.getEncounterMessage(), null, () => {
const count = 5643853 + this.scene.gameData.gameStats.classicSessionsPlayed;
//The two lines below check if English ordinals (1st, 2nd, 3rd, Xth) are used and determine which one to use.
//Otherwise, it defaults to an empty string.
//As of 08-07-24: Spanish and Italian default to the English translations
const ordinalUse = ["en", "es", "it"];
const currentLanguage = i18next.resolvedLanguage ?? "en";
const ordinalIndex = (ordinalUse.includes(currentLanguage)) ? ["st", "nd", "rd"][((count + 90) % 100 - 10) % 10 - 1] ?? "th" : "";
const cycleCount = count.toLocaleString() + ordinalIndex;
const encounterDialogue = i18next.t(`${(this.scene.gameData.gender === PlayerGender.FEMALE) ? "PGF" : "PGM"}battleSpecDialogue:encounter`, {cycleCount: cycleCount});
this.scene.ui.showDialogue(encounterDialogue, enemy?.species.name, null, () => {
this.doEncounterCommon(false);
});
}, 1500, true);
return true;
}
return false;
}
2023-04-10 18:12:01 +00:00
}
export class NextEncounterPhase extends EncounterPhase {
constructor(scene: BattleScene) {
super(scene);
}
start() {
super.start();
}
2023-04-10 18:12:01 +00:00
doEncounter(): void {
this.scene.playBgm(undefined, true);
for (const pokemon of this.scene.getParty()) {
if (pokemon) {
2024-02-26 20:14:47 +00:00
pokemon.resetBattleData();
}
2024-02-26 20:14:47 +00:00
}
this.scene.arenaNextEnemy.setBiome(this.scene.arena.biomeType);
this.scene.arenaNextEnemy.setVisible(true);
const enemyField = this.scene.getEnemyField();
2023-04-10 18:12:01 +00:00
this.scene.tweens.add({
targets: [this.scene.arenaEnemy, this.scene.arenaNextEnemy, this.scene.currentBattle.trainer, enemyField, this.scene.lastEnemyTrainer].flat(),
x: "+=300",
2023-04-10 18:12:01 +00:00
duration: 2000,
onComplete: () => {
this.scene.arenaEnemy.setBiome(this.scene.arena.biomeType);
2023-04-10 18:12:01 +00:00
this.scene.arenaEnemy.setX(this.scene.arenaNextEnemy.x);
2023-05-07 21:05:19 +00:00
this.scene.arenaEnemy.setAlpha(1);
2023-04-10 18:12:01 +00:00
this.scene.arenaNextEnemy.setX(this.scene.arenaNextEnemy.x - 300);
this.scene.arenaNextEnemy.setVisible(false);
if (this.scene.lastEnemyTrainer) {
2023-10-23 02:45:48 +00:00
this.scene.lastEnemyTrainer.destroy();
}
2024-05-23 23:45:04 +00:00
if (!this.tryOverrideForBattleSpec()) {
this.doEncounterCommon();
}
2023-04-10 18:12:01 +00:00
}
});
}
}
export class NewBiomeEncounterPhase extends NextEncounterPhase {
constructor(scene: BattleScene) {
super(scene);
}
doEncounter(): void {
2024-03-17 02:06:56 +00:00
this.scene.playBgm(undefined, true);
for (const pokemon of this.scene.getParty()) {
if (pokemon) {
2023-11-29 02:35:52 +00:00
pokemon.resetBattleData();
}
2023-11-29 02:35:52 +00:00
}
2023-12-30 02:04:40 +00:00
this.scene.arena.trySetWeather(getRandomWeatherType(this.scene.arena), false);
for (const pokemon of this.scene.getParty().filter(p => p.isOnField())) {
applyAbAttrs(PostBiomeChangeAbAttr, pokemon, null);
}
const enemyField = this.scene.getEnemyField();
2023-04-10 18:12:01 +00:00
this.scene.tweens.add({
targets: [this.scene.arenaEnemy, enemyField].flat(),
x: "+=300",
2023-04-10 18:12:01 +00:00
duration: 2000,
onComplete: () => {
if (!this.tryOverrideForBattleSpec()) {
this.doEncounterCommon();
}
}
2023-04-10 18:12:01 +00:00
});
}
}
2023-07-04 21:50:51 +00:00
export class PostSummonPhase extends PokemonPhase {
constructor(scene: BattleScene, battlerIndex: BattlerIndex) {
super(scene, battlerIndex);
}
start() {
super.start();
const pokemon = this.getPokemon();
if (pokemon.status?.effect === StatusEffect.TOXIC) {
pokemon.status.turnCount = 0;
}
2023-07-04 21:50:51 +00:00
this.scene.arena.applyTags(ArenaTrapTag, pokemon);
2023-12-23 03:46:05 +00:00
applyPostSummonAbAttrs(PostSummonAbAttr, pokemon).then(() => this.end());
2023-07-04 21:50:51 +00:00
}
}
2023-04-12 04:37:56 +00:00
export class SelectBiomePhase extends BattlePhase {
2023-04-10 18:12:01 +00:00
constructor(scene: BattleScene) {
super(scene);
}
start() {
super.start();
2023-04-12 04:37:56 +00:00
const currentBiome = this.scene.arena.biomeType;
const setNextBiome = (nextBiome: Biome) => {
if (this.scene.currentBattle.waveIndex % 10 === 1) {
this.scene.applyModifiers(MoneyInterestModifier, true, this.scene);
this.scene.unshiftPhase(new PartyHealPhase(this.scene, false));
}
2023-04-12 04:37:56 +00:00
this.scene.unshiftPhase(new SwitchBiomePhase(this.scene, nextBiome));
this.end();
};
2024-03-17 02:06:56 +00:00
if ((this.scene.gameMode.isClassic && this.scene.gameMode.isWaveFinal(this.scene.currentBattle.waveIndex + 9))
2024-04-23 00:30:46 +00:00
|| (this.scene.gameMode.isDaily && this.scene.gameMode.isWaveFinal(this.scene.currentBattle.waveIndex))
|| (this.scene.gameMode.hasShortBiomes && !(this.scene.currentBattle.waveIndex % 50))) {
setNextBiome(Biome.END);
} else if (this.scene.gameMode.hasRandomBiomes) {
2023-12-07 18:41:47 +00:00
setNextBiome(this.generateNextBiome());
2024-06-14 17:16:32 +00:00
} else if (Array.isArray(biomeLinks[currentBiome])) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
let biomes: Biome[] = [];
this.scene.executeWithSeedOffset(() => {
biomes = (biomeLinks[currentBiome] as (Biome | [Biome, integer])[])
.filter(b => !Array.isArray(b) || !Utils.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)) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
let biomeChoices: Biome[] = [];
this.scene.executeWithSeedOffset(() => {
2024-06-14 17:16:32 +00:00
biomeChoices = (!Array.isArray(biomeLinks[currentBiome])
? [biomeLinks[currentBiome] as Biome]
: biomeLinks[currentBiome] as (Biome | [Biome, integer])[])
.filter((b, i) => !Array.isArray(b) || !Utils.randSeedInt(b[1]))
.map(b => Array.isArray(b) ? b[0] : b);
}, this.scene.currentBattle.waveIndex);
const biomeSelectItems = biomeChoices.map(b => {
const ret: OptionSelectItem = {
label: getBiomeName(b),
handler: () => {
this.scene.ui.setMode(Mode.MESSAGE);
setNextBiome(b);
return true;
}
};
return ret;
});
this.scene.ui.setMode(Mode.OPTION_SELECT, {
options: biomeSelectItems,
delay: 1000
2023-04-26 23:19:39 +00:00
});
} else {
setNextBiome(biomes[Utils.randSeedInt(biomes.length)]);
}
} else if (biomeLinks.hasOwnProperty(currentBiome)) {
2024-06-14 17:16:32 +00:00
setNextBiome(biomeLinks[currentBiome] as Biome);
} else {
2024-04-23 00:30:46 +00:00
setNextBiome(this.generateNextBiome());
}
2023-04-12 04:37:56 +00:00
}
2023-12-07 18:41:47 +00:00
generateNextBiome(): Biome {
if (!(this.scene.currentBattle.waveIndex % 50)) {
2023-12-07 18:41:47 +00:00
return Biome.END;
}
return this.scene.generateRandomBiome(this.scene.currentBattle.waveIndex);
2023-12-07 18:41:47 +00:00
}
2023-04-12 04:37:56 +00:00
}
export class SwitchBiomePhase extends BattlePhase {
private nextBiome: Biome;
constructor(scene: BattleScene, nextBiome: Biome) {
super(scene);
this.nextBiome = nextBiome;
}
start() {
super.start();
if (this.nextBiome === undefined) {
return this.end();
}
2023-04-10 18:12:01 +00:00
this.scene.tweens.add({
targets: [this.scene.arenaEnemy, this.scene.lastEnemyTrainer],
x: "+=300",
2023-04-10 18:12:01 +00:00
duration: 2000,
onComplete: () => {
this.scene.arenaEnemy.setX(this.scene.arenaEnemy.x - 600);
this.scene.newArena(this.nextBiome);
2023-04-10 18:12:01 +00:00
const biomeKey = getBiomeKey(this.nextBiome);
2023-04-10 18:12:01 +00:00
const bgTexture = `${biomeKey}_bg`;
this.scene.arenaBgTransition.setTexture(bgTexture);
2023-04-10 18:12:01 +00:00
this.scene.arenaBgTransition.setAlpha(0);
this.scene.arenaBgTransition.setVisible(true);
this.scene.arenaPlayerTransition.setBiome(this.nextBiome);
2023-04-10 18:12:01 +00:00
this.scene.arenaPlayerTransition.setAlpha(0);
this.scene.arenaPlayerTransition.setVisible(true);
this.scene.tweens.add({
targets: [this.scene.arenaPlayer, this.scene.arenaBgTransition, this.scene.arenaPlayerTransition],
2023-04-10 18:12:01 +00:00
duration: 1000,
delay: 1000,
ease: "Sine.easeInOut",
2023-04-30 15:38:46 +00:00
alpha: (target: any) => target === this.scene.arenaPlayer ? 0 : 1,
2023-04-10 18:12:01 +00:00
onComplete: () => {
this.scene.arenaBg.setTexture(bgTexture);
this.scene.arenaPlayer.setBiome(this.nextBiome);
2023-04-30 15:38:46 +00:00
this.scene.arenaPlayer.setAlpha(1);
this.scene.arenaEnemy.setBiome(this.nextBiome);
2023-05-07 21:05:19 +00:00
this.scene.arenaEnemy.setAlpha(1);
this.scene.arenaNextEnemy.setBiome(this.nextBiome);
2023-04-10 18:12:01 +00:00
this.scene.arenaBgTransition.setVisible(false);
this.scene.arenaPlayerTransition.setVisible(false);
if (this.scene.lastEnemyTrainer) {
2023-10-23 02:45:48 +00:00
this.scene.lastEnemyTrainer.destroy();
}
2023-04-10 18:12:01 +00:00
this.end();
}
2023-04-30 15:38:46 +00:00
});
2023-04-10 18:12:01 +00:00
}
});
}
}
export class SummonPhase extends PartyMemberPokemonPhase {
2024-04-11 00:57:22 +00:00
private loaded: boolean;
constructor(scene: BattleScene, fieldIndex: integer, player: boolean = true, loaded: boolean = false) {
super(scene, fieldIndex, player);
this.loaded = loaded;
2023-04-10 18:12:01 +00:00
}
start() {
super.start();
this.preSummon();
}
/**
* Sends out a Pokemon before the battle begins and shows the appropriate messages
*/
2023-04-10 18:12:01 +00:00
preSummon(): void {
const partyMember = this.getPokemon();
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
// If the Pokemon about to be sent out is fainted or illegal under a challenge, switch to the first non-fainted legal Pokemon
if (!partyMember.isAllowedInBattle()) {
console.warn("The Pokemon about to be sent out is fainted or illegal under a challenge. Attempting to resolve...");
// First check if they're somehow still in play, if so remove them.
if (partyMember.isOnField()) {
partyMember.leaveField();
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
}
2023-10-07 20:08:33 +00:00
const party = this.getParty();
2024-05-23 23:45:04 +00:00
// Find the first non-fainted Pokemon index above the current one
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
const legalIndex = party.findIndex((p, i) => i > this.partyMemberIndex && p.isAllowedInBattle());
if (legalIndex === -1) {
console.error("Party Details:\n", party);
console.error("All available Pokemon were fainted or illegal!");
this.scene.clearPhaseQueue();
this.scene.unshiftPhase(new GameOverPhase(this.scene));
this.end();
return;
}
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
// Swaps the fainted Pokemon and the first non-fainted legal Pokemon in the party
[party[this.partyMemberIndex], party[legalIndex]] = [party[legalIndex], party[this.partyMemberIndex]];
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
console.warn("Swapped %s %O with %s %O", getPokemonNameWithAffix(partyMember), partyMember, getPokemonNameWithAffix(party[0]), party[0]);
}
2023-10-07 20:08:33 +00:00
if (this.player) {
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
this.scene.ui.showText(i18next.t("battle:playerGo", { pokemonName: getPokemonNameWithAffix(this.getPokemon()) }));
if (this.player) {
this.scene.pbTray.hide();
}
this.scene.trainer.setTexture(`trainer_${this.scene.gameData.gender === PlayerGender.FEMALE ? "f" : "m"}_back_pb`);
this.scene.time.delayedCall(562, () => {
this.scene.trainer.setFrame("2");
this.scene.time.delayedCall(64, () => {
this.scene.trainer.setFrame("3");
});
});
2023-10-07 20:08:33 +00:00
this.scene.tweens.add({
targets: this.scene.trainer,
x: -36,
duration: 1000,
onComplete: () => this.scene.trainer.setVisible(false)
2023-10-07 20:08:33 +00:00
});
this.scene.time.delayedCall(750, () => this.summon());
} else {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
const trainerName = this.scene.currentBattle.trainer?.getName(!(this.fieldIndex % 2) ? TrainerSlot.TRAINER : TrainerSlot.TRAINER_PARTNER);
const pokemonName = this.getPokemon().getNameToRender();
const message = i18next.t("battle:trainerSendOut", { trainerName, pokemonName });
this.scene.pbTrayEnemy.hide();
this.scene.ui.showText(message, null, () => this.summon());
}
2023-04-10 18:12:01 +00:00
}
summon(): void {
const pokemon = this.getPokemon();
const pokeball = this.scene.addFieldSprite(this.player ? 36 : 248, this.player ? 80 : 44, "pb", getPokeballAtlasKey(pokemon.pokeball));
2023-04-10 18:12:01 +00:00
pokeball.setVisible(false);
pokeball.setOrigin(0.5, 0.625);
this.scene.field.add(pokeball);
if (this.fieldIndex === 1) {
2023-10-07 20:08:33 +00:00
pokemon.setFieldPosition(FieldPosition.RIGHT, 0);
} else {
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
const availablePartyMembers = this.getParty().filter(p => p.isAllowedInBattle()).length;
2023-10-07 20:08:33 +00:00
pokemon.setFieldPosition(!this.scene.currentBattle.double || availablePartyMembers === 1 ? FieldPosition.CENTER : FieldPosition.LEFT);
}
2023-10-07 20:08:33 +00:00
const fpOffset = pokemon.getFieldPositionOffset();
2023-04-10 18:12:01 +00:00
pokeball.setVisible(true);
this.scene.tweens.add({
targets: pokeball,
duration: 650,
2023-10-07 20:08:33 +00:00
x: (this.player ? 100 : 236) + fpOffset[0]
});
2023-04-10 18:12:01 +00:00
this.scene.tweens.add({
targets: pokeball,
duration: 150,
ease: "Cubic.easeOut",
2023-10-07 20:08:33 +00:00
y: (this.player ? 70 : 34) + fpOffset[1],
2023-04-10 18:12:01 +00:00
onComplete: () => {
this.scene.tweens.add({
targets: pokeball,
duration: 500,
ease: "Cubic.easeIn",
angle: 1440,
2023-10-07 20:08:33 +00:00
y: (this.player ? 132 : 86) + fpOffset[1],
2023-04-10 18:12:01 +00:00
onComplete: () => {
this.scene.playSound("pb_rel");
2023-04-10 18:12:01 +00:00
pokeball.destroy();
2023-10-07 20:08:33 +00:00
this.scene.add.existing(pokemon);
this.scene.field.add(pokemon);
if (!this.player) {
const playerPokemon = this.scene.getPlayerPokemon() as Pokemon;
if (playerPokemon?.visible) {
2023-10-07 20:08:33 +00:00
this.scene.field.moveBelow(pokemon, playerPokemon);
}
this.scene.currentBattle.seenEnemyPartyMemberIds.add(pokemon.id);
2023-10-07 20:08:33 +00:00
}
addPokeballOpenParticles(this.scene, pokemon.x, pokemon.y - 16, pokemon.pokeball);
this.scene.updateModifiers(this.player);
2024-02-15 04:25:12 +00:00
this.scene.updateFieldScale();
2023-10-07 20:08:33 +00:00
pokemon.showInfo();
pokemon.playAnim();
pokemon.setVisible(true);
2023-10-31 18:09:33 +00:00
pokemon.getSprite().setVisible(true);
2023-10-07 20:08:33 +00:00
pokemon.setScale(0.5);
pokemon.tint(getPokeballTintColor(pokemon.pokeball));
pokemon.untint(250, "Sine.easeIn");
2024-02-15 04:25:12 +00:00
this.scene.updateFieldScale();
2023-04-10 18:12:01 +00:00
this.scene.tweens.add({
2023-10-07 20:08:33 +00:00
targets: pokemon,
2023-04-10 18:12:01 +00:00
duration: 250,
ease: "Sine.easeIn",
2024-02-15 04:25:12 +00:00
scale: pokemon.getSpriteScale(),
2023-04-10 18:12:01 +00:00
onComplete: () => {
2024-03-29 18:42:27 +00:00
pokemon.cry(pokemon.getHpRatio() > 0.25 ? undefined : { rate: 0.85 });
2023-10-07 20:08:33 +00:00
pokemon.getSprite().clearTint();
pokemon.resetSummonData();
2023-04-10 18:12:01 +00:00
this.scene.time.delayedCall(1000, () => this.end());
}
});
}
});
}
});
}
2023-07-05 20:13:00 +00:00
onEnd(): void {
const pokemon = this.getPokemon();
if (pokemon.isShiny()) {
this.scene.unshiftPhase(new ShinySparklePhase(this.scene, pokemon.getBattlerIndex()));
}
2023-04-10 18:12:01 +00:00
pokemon.resetTurnData();
if (!this.loaded || this.scene.currentBattle.battleType === BattleType.TRAINER || (this.scene.currentBattle.waveIndex % 10) === 1) {
2024-04-11 00:57:22 +00:00
this.scene.triggerPokemonFormChange(pokemon, SpeciesFormChangeActiveTrigger, true);
this.queuePostSummon();
}
2023-07-05 20:13:00 +00:00
}
queuePostSummon(): void {
this.scene.pushPhase(new PostSummonPhase(this.scene, this.getPokemon().getBattlerIndex()));
}
end() {
this.onEnd();
2023-05-04 14:25:11 +00:00
2023-04-10 18:12:01 +00:00
super.end();
}
}
export class SwitchSummonPhase extends SummonPhase {
private slotIndex: integer;
private doReturn: boolean;
2023-04-28 23:26:41 +00:00
private batonPass: boolean;
2023-04-10 18:12:01 +00:00
2023-10-07 20:08:33 +00:00
private lastPokemon: Pokemon;
2023-04-28 23:26:41 +00:00
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
/**
* Constructor for creating a new SwitchSummonPhase
* @param scene {@linkcode BattleScene} the scene the phase is associated with
* @param fieldIndex integer representing position on the battle field
* @param slotIndex integer for the index of pokemon (in party of 6) to switch into
* @param doReturn boolean whether to render "comeback" dialogue
* @param batonPass boolean if the switch is from baton pass
* @param player boolean if the switch is from the player
*/
2023-10-07 20:08:33 +00:00
constructor(scene: BattleScene, fieldIndex: integer, slotIndex: integer, doReturn: boolean, batonPass: boolean, player?: boolean) {
super(scene, fieldIndex, player !== undefined ? player : true);
2023-04-10 18:12:01 +00:00
this.slotIndex = slotIndex;
this.doReturn = doReturn;
2023-04-28 23:26:41 +00:00
this.batonPass = batonPass;
2023-04-10 18:12:01 +00:00
}
start(): void {
super.start();
}
2023-04-10 18:12:01 +00:00
preSummon(): void {
if (!this.player) {
if (this.slotIndex === -1) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
//@ts-ignore
this.slotIndex = this.scene.currentBattle.trainer?.getNextSummonIndex(!this.fieldIndex ? TrainerSlot.TRAINER : TrainerSlot.TRAINER_PARTNER); // TODO: what would be the default trainer-slot fallback?
}
if (this.slotIndex > -1) {
this.showEnemyTrainer(!(this.fieldIndex % 2) ? TrainerSlot.TRAINER : TrainerSlot.TRAINER_PARTNER);
this.scene.pbTrayEnemy.showPbTray(this.scene.getEnemyParty());
}
}
if (!this.doReturn || (this.slotIndex !== -1 && !(this.player ? this.scene.getParty() : this.scene.getEnemyParty())[this.slotIndex])) {
if (this.player) {
return this.switchAndSummon();
} else {
this.scene.time.delayedCall(750, () => this.switchAndSummon());
return;
}
2023-04-10 18:12:01 +00:00
}
2023-10-07 20:08:33 +00:00
const pokemon = this.getPokemon();
2023-04-10 18:12:01 +00:00
if (!this.batonPass) {
(this.player ? this.scene.getEnemyField() : this.scene.getPlayerField()).forEach(enemyPokemon => enemyPokemon.removeTagsBySourceId(pokemon.id));
}
2023-04-23 02:14:53 +00:00
this.scene.ui.showText(this.player ?
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
i18next.t("battle:playerComeBack", { pokemonName: getPokemonNameWithAffix(pokemon) }) :
i18next.t("battle:trainerComeBack", {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
trainerName: this.scene.currentBattle.trainer?.getName(!(this.fieldIndex % 2) ? TrainerSlot.TRAINER : TrainerSlot.TRAINER_PARTNER),
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
pokemonName: getPokemonNameWithAffix(pokemon)
})
);
this.scene.playSound("pb_rel");
pokemon.hideInfo(); // this is also done by pokemon.leaveField(), but needs to go earlier for animation purposes
pokemon.tint(getPokeballTintColor(pokemon.pokeball), 1, 250, "Sine.easeIn");
2023-04-10 18:12:01 +00:00
this.scene.tweens.add({
2023-10-07 20:08:33 +00:00
targets: pokemon,
2023-04-10 18:12:01 +00:00
duration: 250,
ease: "Sine.easeIn",
2023-04-10 18:12:01 +00:00
scale: 0.5,
onComplete: () => {
// 250ms delay on leaveField is necessary to avoid calling hideInfo() twice
// and double-animating the stats panel slideout
this.scene.time.delayedCall(250, () => pokemon.leaveField(!this.batonPass));
2023-04-10 18:12:01 +00:00
this.scene.time.delayedCall(750, () => this.switchAndSummon());
}
});
}
switchAndSummon() {
const party = this.player ? this.getParty() : this.scene.getEnemyParty();
const switchedInPokemon = party[this.slotIndex];
this.lastPokemon = this.getPokemon();
applyPreSwitchOutAbAttrs(PreSwitchOutAbAttr, this.lastPokemon);
if (this.batonPass && switchedInPokemon) {
(this.player ? this.scene.getEnemyField() : this.scene.getPlayerField()).forEach(enemyPokemon => enemyPokemon.transferTagsBySourceId(this.lastPokemon.id, switchedInPokemon.id));
if (!this.scene.findModifier(m => m instanceof SwitchEffectTransferModifier && (m as SwitchEffectTransferModifier).pokemonId === switchedInPokemon.id)) {
2023-04-28 23:26:41 +00:00
const batonPassModifier = this.scene.findModifier(m => m instanceof SwitchEffectTransferModifier
&& (m as SwitchEffectTransferModifier).pokemonId === this.lastPokemon.id) as SwitchEffectTransferModifier;
if (batonPassModifier && !this.scene.findModifier(m => m instanceof SwitchEffectTransferModifier && (m as SwitchEffectTransferModifier).pokemonId === switchedInPokemon.id)) {
this.scene.tryTransferHeldItemModifier(batonPassModifier, switchedInPokemon, false);
}
2023-04-28 23:26:41 +00:00
}
}
if (switchedInPokemon) {
party[this.slotIndex] = this.lastPokemon;
party[this.fieldIndex] = switchedInPokemon;
const showTextAndSummon = () => {
this.scene.ui.showText(this.player ?
i18next.t("battle:playerGo", { pokemonName: getPokemonNameWithAffix(switchedInPokemon) }) :
i18next.t("battle:trainerGo", {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
trainerName: this.scene.currentBattle.trainer?.getName(!(this.fieldIndex % 2) ? TrainerSlot.TRAINER : TrainerSlot.TRAINER_PARTNER),
pokemonName: this.getPokemon().getNameToRender()
})
);
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
// Ensure improperly persisted summon data (such as tags) is cleared upon switching
if (!this.batonPass) {
switchedInPokemon.resetBattleData();
switchedInPokemon.resetSummonData();
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
}
this.summon();
};
if (this.player) {
showTextAndSummon();
} else {
this.scene.time.delayedCall(1500, () => {
this.hideEnemyTrainer();
this.scene.pbTrayEnemy.hide();
showTextAndSummon();
});
}
} else {
this.end();
}
2023-04-10 18:12:01 +00:00
}
2023-04-28 23:26:41 +00:00
2023-07-05 20:13:00 +00:00
onEnd(): void {
super.onEnd();
2023-07-04 21:50:51 +00:00
const pokemon = this.getPokemon();
const moveId = this.lastPokemon?.scene.currentBattle.lastMove;
const lastUsedMove = moveId ? allMoves[moveId] : undefined;
const currentCommand = pokemon.scene.currentBattle.turnCommands[this.fieldIndex]?.command;
const lastPokemonIsForceSwitchedAndNotFainted = lastUsedMove?.hasAttr(ForceSwitchOutAttr) && !this.lastPokemon.isFainted();
// Compensate for turn spent summoning
// Or compensate for force switch move if switched out pokemon is not fainted
if (currentCommand === Command.POKEMON || lastPokemonIsForceSwitchedAndNotFainted) {
2024-03-14 22:03:38 +00:00
pokemon.battleSummonData.turnCount--;
}
if (this.batonPass && pokemon) {
pokemon.transferSummon(this.lastPokemon);
}
2023-04-28 23:26:41 +00:00
this.lastPokemon?.resetSummonData();
2024-01-10 04:34:43 +00:00
this.scene.triggerPokemonFormChange(pokemon, SpeciesFormChangeActiveTrigger, true);
2023-07-05 20:13:00 +00:00
}
2023-04-28 23:26:41 +00:00
2023-07-05 20:13:00 +00:00
queuePostSummon(): void {
this.scene.unshiftPhase(new PostSummonPhase(this.scene, this.getPokemon().getBattlerIndex()));
2023-04-28 23:26:41 +00:00
}
2023-04-10 18:12:01 +00:00
}
export class ReturnPhase extends SwitchSummonPhase {
constructor(scene: BattleScene, fieldIndex: integer) {
super(scene, fieldIndex, -1, true, false);
}
switchAndSummon(): void {
this.end();
}
summon(): void { }
2023-07-05 20:13:00 +00:00
onEnd(): void {
const pokemon = this.getPokemon();
pokemon.resetTurnData();
pokemon.resetSummonData();
2024-01-10 04:34:43 +00:00
2024-02-15 04:25:12 +00:00
this.scene.updateFieldScale();
2024-01-10 04:34:43 +00:00
this.scene.triggerPokemonFormChange(pokemon, SpeciesFormChangeActiveTrigger);
2023-07-05 20:13:00 +00:00
}
}
export class ShowTrainerPhase extends BattlePhase {
constructor(scene: BattleScene) {
super(scene);
}
start() {
super.start();
this.scene.trainer.setVisible(true);
this.scene.trainer.setTexture(`trainer_${this.scene.gameData.gender === PlayerGender.FEMALE ? "f" : "m"}_back`);
this.scene.tweens.add({
targets: this.scene.trainer,
x: 106,
duration: 1000,
onComplete: () => this.end()
});
}
}
export class ToggleDoublePositionPhase extends BattlePhase {
private double: boolean;
constructor(scene: BattleScene, double: boolean) {
super(scene);
this.double = double;
}
start() {
super.start();
const playerPokemon = this.scene.getPlayerField().find(p => p.isActive(true));
2023-11-25 20:53:38 +00:00
if (playerPokemon) {
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
playerPokemon.setFieldPosition(this.double && this.scene.getParty().filter(p => p.isAllowedInBattle()).length > 1 ? FieldPosition.LEFT : FieldPosition.CENTER, 500).then(() => {
2023-11-25 20:53:38 +00:00
if (playerPokemon.getFieldIndex() === 1) {
const party = this.scene.getParty();
party[1] = party[0];
party[0] = playerPokemon;
}
this.end();
});
} else {
this.end();
}
}
}
2023-04-10 18:12:01 +00:00
export class CheckSwitchPhase extends BattlePhase {
protected fieldIndex: integer;
protected useName: boolean;
constructor(scene: BattleScene, fieldIndex: integer, useName: boolean) {
super(scene);
this.fieldIndex = fieldIndex;
this.useName = useName;
2023-04-10 18:12:01 +00:00
}
start() {
super.start();
const pokemon = this.scene.getPlayerField()[this.fieldIndex];
if (this.scene.battleStyle === BattleStyle.SET) {
super.end();
return;
}
if (this.scene.field.getAll().indexOf(pokemon) === -1) {
this.scene.unshiftPhase(new SummonMissingPhase(this.scene, this.fieldIndex));
super.end();
return;
}
if (!this.scene.getParty().slice(1).filter(p => p.isActive()).length) {
super.end();
return;
}
if (pokemon.getTag(BattlerTagType.FRENZY)) {
2023-04-15 05:32:16 +00:00
super.end();
return;
}
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
this.scene.ui.showText(i18next.t("battle:switchQuestion", { pokemonName: this.useName ? getPokemonNameWithAffix(pokemon) : i18next.t("battle:pokemon") }), null, () => {
2023-04-10 18:12:01 +00:00
this.scene.ui.setMode(Mode.CONFIRM, () => {
this.scene.ui.setMode(Mode.MESSAGE);
this.scene.tryRemovePhase(p => p instanceof PostSummonPhase && p.player && p.fieldIndex === this.fieldIndex);
this.scene.unshiftPhase(new SwitchPhase(this.scene, this.fieldIndex, false, true));
2023-04-10 18:12:01 +00:00
this.end();
}, () => {
this.scene.ui.setMode(Mode.MESSAGE);
this.end();
});
2023-04-10 18:12:01 +00:00
});
}
}
export class SummonMissingPhase extends SummonPhase {
constructor(scene: BattleScene, fieldIndex: integer) {
super(scene, fieldIndex);
}
preSummon(): void {
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
this.scene.ui.showText(i18next.t("battle:sendOutPokemon", { pokemonName: getPokemonNameWithAffix(this.getPokemon()) }));
this.scene.time.delayedCall(250, () => this.summon());
}
}
export class LevelCapPhase extends FieldPhase {
constructor(scene: BattleScene) {
super(scene);
}
start(): void {
super.start();
this.scene.ui.setMode(Mode.MESSAGE).then(() => {
this.scene.playSound("level_up_fanfare");
this.scene.ui.showText(i18next.t("battle:levelCapUp", { levelCap: this.scene.getMaxExpLevel() }), null, () => this.end(), null, true);
this.executeForAll(pokemon => pokemon.updateInfo(true));
});
}
}
export class TurnInitPhase extends FieldPhase {
constructor(scene: BattleScene) {
super(scene);
}
start() {
super.start();
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
this.scene.getPlayerField().forEach(p => {
// If this pokemon is in play and evolved into something illegal under the current challenge, force a switch
if (p.isOnField() && !p.isAllowedInBattle()) {
this.scene.queueMessage(i18next.t("challenges:illegalEvolution", { "pokemon": p.name }), null, true);
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
const allowedPokemon = this.scene.getParty().filter(p => p.isAllowedInBattle());
if (!allowedPokemon.length) {
// If there are no longer any legal pokemon in the party, game over.
this.scene.clearPhaseQueue();
this.scene.unshiftPhase(new GameOverPhase(this.scene));
} else if (allowedPokemon.length >= this.scene.currentBattle.getBattlerCount() || (this.scene.currentBattle.double && !allowedPokemon[0].isActive(true))) {
// If there is at least one pokemon in the back that is legal to switch in, force a switch.
p.switchOut(false);
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
} else {
// If there are no pokemon in the back but we're not game overing, just hide the pokemon.
// This should only happen in double battles.
p.leaveField();
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
}
if (allowedPokemon.length === 1 && this.scene.currentBattle.double) {
this.scene.unshiftPhase(new ToggleDoublePositionPhase(this.scene, true));
}
}
});
2023-12-22 01:58:00 +00:00
//this.scene.pushPhase(new MoveAnimTestPhase(this.scene));
this.scene.eventTarget.dispatchEvent(new TurnInitEvent());
2023-12-22 01:58:00 +00:00
2023-06-01 17:54:52 +00:00
this.scene.getField().forEach((pokemon, i) => {
if (pokemon?.isActive()) {
if (pokemon.isPlayer()) {
2023-06-01 17:54:52 +00:00
this.scene.currentBattle.addParticipant(pokemon as PlayerPokemon);
}
2023-06-01 17:54:52 +00:00
pokemon.resetTurnData();
2023-06-01 17:54:52 +00:00
this.scene.pushPhase(pokemon.isPlayer() ? new CommandPhase(this.scene, i) : new EnemyCommandPhase(this.scene, i - BattlerIndex.ENEMY));
}
});
this.scene.pushPhase(new TurnStartPhase(this.scene));
this.end();
}
}
export class CommandPhase extends FieldPhase {
protected fieldIndex: integer;
constructor(scene: BattleScene, fieldIndex: integer) {
super(scene);
this.fieldIndex = fieldIndex;
2023-04-10 18:12:01 +00:00
}
start() {
super.start();
if (this.fieldIndex) {
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
// If we somehow are attempting to check the right pokemon but there's only one pokemon out
// Switch back to the center pokemon. This can happen rarely in double battles with mid turn switching
if (this.scene.getPlayerField().filter(p => p.isActive()).length === 1) {
this.fieldIndex = FieldPosition.CENTER;
} else {
const allyCommand = this.scene.currentBattle.turnCommands[this.fieldIndex - 1];
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
if (allyCommand?.command === Command.BALL || allyCommand?.command === Command.RUN) {
this.scene.currentBattle.turnCommands[this.fieldIndex] = { command: allyCommand?.command, skip: true };
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
}
}
}
if (this.scene.currentBattle.turnCommands[this.fieldIndex]?.skip) {
return this.end();
}
const playerPokemon = this.scene.getPlayerField()[this.fieldIndex];
2023-04-13 16:16:36 +00:00
2023-04-21 01:32:48 +00:00
const moveQueue = playerPokemon.getMoveQueue();
while (moveQueue.length && moveQueue[0]
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
&& moveQueue[0].move && (!playerPokemon.getMoveset().find(m => m?.moveId === moveQueue[0].move)
|| !playerPokemon.getMoveset()[playerPokemon.getMoveset().findIndex(m => m?.moveId === moveQueue[0].move)]!.isUsable(playerPokemon, moveQueue[0].ignorePP))) { // TODO: is the bang correct?
moveQueue.shift();
}
2023-04-21 01:32:48 +00:00
if (moveQueue.length) {
const queuedMove = moveQueue[0];
if (!queuedMove.move) {
this.handleCommand(Command.FIGHT, -1, false);
} else {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
const moveIndex = playerPokemon.getMoveset().findIndex(m => m?.moveId === queuedMove.move);
if (moveIndex > -1 && playerPokemon.getMoveset()[moveIndex]!.isUsable(playerPokemon, queuedMove.ignorePP)) { // TODO: is the bang correct?
this.handleCommand(Command.FIGHT, moveIndex, queuedMove.ignorePP, { targets: queuedMove.targets, multiple: queuedMove.targets.length > 1 });
} else {
this.scene.ui.setMode(Mode.COMMAND, this.fieldIndex);
}
2023-04-21 01:32:48 +00:00
}
} else {
this.scene.ui.setMode(Mode.COMMAND, this.fieldIndex);
}
2023-04-10 18:12:01 +00:00
}
2023-04-28 23:26:41 +00:00
handleCommand(command: Command, cursor: integer, ...args: any[]): boolean {
const playerPokemon = this.scene.getPlayerField()[this.fieldIndex];
const enemyField = this.scene.getEnemyField();
2023-04-10 18:12:01 +00:00
let success: boolean;
2023-04-11 23:08:03 +00:00
2023-04-10 18:12:01 +00:00
switch (command) {
case Command.FIGHT:
let useStruggle = false;
2024-05-23 23:45:04 +00:00
if (cursor === -1 ||
playerPokemon.trySelectMove(cursor, args[0] as boolean) ||
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
(useStruggle = cursor > -1 && !playerPokemon.getMoveset().filter(m => m?.isUsable(playerPokemon)).length)) {
const moveId = !useStruggle ? cursor > -1 ? playerPokemon.getMoveset()[cursor]!.moveId : Moves.NONE : Moves.STRUGGLE; // TODO: is the bang correct?
const turnCommand: TurnCommand = { command: Command.FIGHT, cursor: cursor, move: { move: moveId, targets: [], ignorePP: args[0] }, args: args };
const moveTargets: MoveTargetSet = args.length < 3 ? getMoveTargets(playerPokemon, moveId) : args[2];
if (!moveId) {
turnCommand.targets = [this.fieldIndex];
}
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
console.log(moveTargets, getPokemonNameWithAffix(playerPokemon));
if (moveTargets.targets.length > 1 && moveTargets.multiple) {
this.scene.unshiftPhase(new SelectTargetPhase(this.scene, this.fieldIndex));
}
if (moveTargets.targets.length <= 1 || moveTargets.multiple) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
turnCommand.move!.targets = moveTargets.targets; //TODO: is the bang correct here?
} else if (playerPokemon.getTag(BattlerTagType.CHARGING) && playerPokemon.getMoveQueue().length >= 1) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
turnCommand.move!.targets = playerPokemon.getMoveQueue()[0].targets; //TODO: is the bang correct here?
} else {
this.scene.unshiftPhase(new SelectTargetPhase(this.scene, this.fieldIndex));
}
this.scene.currentBattle.turnCommands[this.fieldIndex] = turnCommand;
success = true;
} else if (cursor < playerPokemon.getMoveset().length) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
const move = playerPokemon.getMoveset()[cursor]!; //TODO: is this bang correct?
this.scene.ui.setMode(Mode.MESSAGE);
// Decides between a Disabled, Not Implemented, or No PP translation message
2024-05-23 23:45:04 +00:00
const errorMessage =
playerPokemon.summonData.disabledMove === move.moveId ? "battle:moveDisabled" :
move.getName().endsWith(" (N)") ? "battle:moveNotImplemented" : "battle:moveNoPP";
const moveName = move.getName().replace(" (N)", ""); // Trims off the indicator
this.scene.ui.showText(i18next.t(errorMessage, { moveName: moveName }), null, () => {
this.scene.ui.clearText();
this.scene.ui.setMode(Mode.FIGHT, this.fieldIndex);
}, null, true);
}
break;
case Command.BALL:
if (!this.scene.gameMode.isFreshStartChallenge() && this.scene.arena.biomeType === Biome.END && (!this.scene.gameMode.isClassic || (this.scene.getEnemyField().filter(p => p.isActive(true)).some(p => !p.scene.gameData.dexData[p.species.speciesId].caughtAttr) && this.scene.gameData.getStarterCount(d => !!d.caughtAttr) < Object.keys(speciesStarters).length - 1))) {
this.scene.ui.setMode(Mode.COMMAND, this.fieldIndex);
this.scene.ui.setMode(Mode.MESSAGE);
this.scene.ui.showText(i18next.t("battle:noPokeballForce"), null, () => {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.ui.showText("", 0);
this.scene.ui.setMode(Mode.COMMAND, this.fieldIndex);
}, null, true);
} else if (this.scene.currentBattle.battleType === BattleType.TRAINER) {
this.scene.ui.setMode(Mode.COMMAND, this.fieldIndex);
this.scene.ui.setMode(Mode.MESSAGE);
this.scene.ui.showText(i18next.t("battle:noPokeballTrainer"), null, () => {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.ui.showText("", 0);
this.scene.ui.setMode(Mode.COMMAND, this.fieldIndex);
}, null, true);
} else {
const targets = this.scene.getEnemyField().filter(p => p.isActive(true)).map(p => p.getBattlerIndex());
if (targets.length > 1) {
this.scene.ui.setMode(Mode.COMMAND, this.fieldIndex);
this.scene.ui.setMode(Mode.MESSAGE);
this.scene.ui.showText(i18next.t("battle:noPokeballMulti"), null, () => {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.ui.showText("", 0);
this.scene.ui.setMode(Mode.COMMAND, this.fieldIndex);
}, null, true);
} else if (cursor < 5) {
const targetPokemon = this.scene.getEnemyField().find(p => p.isActive(true));
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
if (targetPokemon?.isBoss() && targetPokemon?.bossSegmentIndex >= 1 && !targetPokemon?.hasAbility(Abilities.WONDER_GUARD, false, true) && cursor < PokeballType.MASTER_BALL) {
this.scene.ui.setMode(Mode.COMMAND, this.fieldIndex);
this.scene.ui.setMode(Mode.MESSAGE);
this.scene.ui.showText(i18next.t("battle:noPokeballStrong"), null, () => {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.ui.showText("", 0);
this.scene.ui.setMode(Mode.COMMAND, this.fieldIndex);
}, null, true);
} else {
this.scene.currentBattle.turnCommands[this.fieldIndex] = { command: Command.BALL, cursor: cursor };
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.currentBattle.turnCommands[this.fieldIndex]!.targets = targets;
if (this.fieldIndex) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.currentBattle.turnCommands[this.fieldIndex - 1]!.skip = true;
}
success = true;
}
2023-04-10 18:12:01 +00:00
}
}
break;
case Command.POKEMON:
case Command.RUN:
const isSwitch = command === Command.POKEMON;
if (!isSwitch && this.scene.arena.biomeType === Biome.END) {
this.scene.ui.setMode(Mode.COMMAND, this.fieldIndex);
this.scene.ui.setMode(Mode.MESSAGE);
this.scene.ui.showText(i18next.t("battle:noEscapeForce"), null, () => {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.ui.showText("", 0);
2023-10-27 23:56:15 +00:00
this.scene.ui.setMode(Mode.COMMAND, this.fieldIndex);
}, null, true);
} else if (!isSwitch && this.scene.currentBattle.battleType === BattleType.TRAINER) {
this.scene.ui.setMode(Mode.COMMAND, this.fieldIndex);
this.scene.ui.setMode(Mode.MESSAGE);
this.scene.ui.showText(i18next.t("battle:noEscapeTrainer"), null, () => {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.ui.showText("", 0);
this.scene.ui.setMode(Mode.COMMAND, this.fieldIndex);
}, null, true);
} else {
const trapTag = playerPokemon.findTag(t => t instanceof TrappedTag) as TrappedTag;
const trapped = new Utils.BooleanHolder(false);
const batonPass = isSwitch && args[0] as boolean;
const trappedAbMessages: string[] = [];
if (!batonPass) {
enemyField.forEach(enemyPokemon => applyCheckTrappedAbAttrs(CheckTrappedAbAttr, enemyPokemon, trapped, playerPokemon, true, trappedAbMessages));
}
if (batonPass || (!trapTag && !trapped.value)) {
this.scene.currentBattle.turnCommands[this.fieldIndex] = isSwitch
? { command: Command.POKEMON, cursor: cursor, args: args }
: { command: Command.RUN };
success = true;
if (!isSwitch && this.fieldIndex) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.currentBattle.turnCommands[this.fieldIndex - 1]!.skip = true;
}
} else if (trapTag) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
if (trapTag.sourceMove === Moves.INGRAIN && trapTag.sourceId && this.scene.getPokemonById(trapTag.sourceId)?.isOfType(Type.GHOST)) {
success = true;
2024-05-23 23:45:04 +00:00
this.scene.currentBattle.turnCommands[this.fieldIndex] = isSwitch
? { command: Command.POKEMON, cursor: cursor, args: args }
: { command: Command.RUN };
break;
}
2024-05-23 23:45:04 +00:00
if (!isSwitch) {
this.scene.ui.setMode(Mode.COMMAND, this.fieldIndex);
this.scene.ui.setMode(Mode.MESSAGE);
}
this.scene.ui.showText(
i18next.t("battle:noEscapePokemon", {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
pokemonName: trapTag.sourceId && this.scene.getPokemonById(trapTag.sourceId) ? getPokemonNameWithAffix(this.scene.getPokemonById(trapTag.sourceId)!) : "",
moveName: trapTag.getMoveName(),
escapeVerb: isSwitch ? i18next.t("battle:escapeVerbSwitch") : i18next.t("battle:escapeVerbFlee")
}),
null,
() => {
2024-08-15 21:47:05 +00:00
this.scene.ui.showText("", 0);
if (!isSwitch) {
this.scene.ui.setMode(Mode.COMMAND, this.fieldIndex);
}
}, null, true);
} else if (trapped.value && trappedAbMessages.length > 0) {
if (!isSwitch) {
this.scene.ui.setMode(Mode.MESSAGE);
}
this.scene.ui.showText(trappedAbMessages[0], null, () => {
2024-08-15 21:47:05 +00:00
this.scene.ui.showText("", 0);
if (!isSwitch) {
this.scene.ui.setMode(Mode.COMMAND, this.fieldIndex);
}
}, null, true);
}
}
break;
2023-04-10 18:12:01 +00:00
}
2023-04-12 04:37:56 +00:00
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
if (success!) { // TODO: is the bang correct?
2023-04-10 18:12:01 +00:00
this.end();
}
2023-04-10 18:12:01 +00:00
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
return success!; // TODO: is the bang correct?
2023-04-10 18:12:01 +00:00
}
cancel() {
if (this.fieldIndex) {
this.scene.unshiftPhase(new CommandPhase(this.scene, 0));
this.scene.unshiftPhase(new CommandPhase(this.scene, 1));
this.end();
}
}
2023-11-16 05:58:57 +00:00
checkFightOverride(): boolean {
const pokemon = this.getPokemon();
const encoreTag = pokemon.getTag(EncoreTag) as EncoreTag;
if (!encoreTag) {
2023-11-16 05:58:57 +00:00
return false;
}
2023-11-16 05:58:57 +00:00
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
const moveIndex = pokemon.getMoveset().findIndex(m => m?.moveId === encoreTag.moveId);
2023-11-16 05:58:57 +00:00
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
if (moveIndex === -1 || !pokemon.getMoveset()[moveIndex]!.isUsable(pokemon)) { // TODO: is this bang correct?
2023-11-16 05:58:57 +00:00
return false;
}
2023-11-16 05:58:57 +00:00
this.handleCommand(Command.FIGHT, moveIndex, false);
return true;
}
getFieldIndex(): integer {
return this.fieldIndex;
}
getPokemon(): PlayerPokemon {
return this.scene.getPlayerField()[this.fieldIndex];
}
2023-04-10 18:12:01 +00:00
end() {
this.scene.ui.setMode(Mode.MESSAGE).then(() => super.end());
}
}
/**
* Phase for determining an enemy AI's action for the next turn.
* During this phase, the enemy decides whether to switch (if it has a trainer)
* or to use a move from its moveset.
*
* For more information on how the Enemy AI works, see docs/enemy-ai.md
* @see {@linkcode Pokemon.getMatchupScore}
* @see {@linkcode EnemyPokemon.getNextMove}
*/
export class EnemyCommandPhase extends FieldPhase {
protected fieldIndex: integer;
constructor(scene: BattleScene, fieldIndex: integer) {
super(scene);
this.fieldIndex = fieldIndex;
}
start() {
super.start();
const enemyPokemon = this.scene.getEnemyField()[this.fieldIndex];
const battle = this.scene.currentBattle;
const trainer = battle.trainer;
/**
* If the enemy has a trainer, decide whether or not the enemy should switch
* to another member in its party.
*
* This block compares the active enemy Pokemon's {@linkcode Pokemon.getMatchupScore | matchup score}
* against the active player Pokemon with the enemy party's other non-fainted Pokemon. If a party
* member's matchup score is 3x the active enemy's score (or 2x for "boss" trainers),
* the enemy will switch to that Pokemon.
*/
if (trainer && !enemyPokemon.getMoveQueue().length) {
const opponents = enemyPokemon.getOpponents();
const trapTag = enemyPokemon.findTag(t => t instanceof TrappedTag) as TrappedTag;
const trapped = new Utils.BooleanHolder(false);
opponents.forEach(playerPokemon => applyCheckTrappedAbAttrs(CheckTrappedAbAttr, playerPokemon, trapped, enemyPokemon, true, []));
if (!trapTag && !trapped.value) {
const partyMemberScores = trainer.getPartyMemberMatchupScores(enemyPokemon.trainerSlot, true);
if (partyMemberScores.length) {
const matchupScores = opponents.map(opp => enemyPokemon.getMatchupScore(opp));
const matchupScore = matchupScores.reduce((total, score) => total += score, 0) / matchupScores.length;
2024-05-23 23:45:04 +00:00
const sortedPartyMemberScores = trainer.getSortedPartyMemberMatchupScores(partyMemberScores);
const switchMultiplier = 1 - (battle.enemySwitchCounter ? Math.pow(0.1, (1 / battle.enemySwitchCounter)) : 0);
if (sortedPartyMemberScores[0][1] * switchMultiplier >= matchupScore * (trainer.config.isBoss ? 2 : 3)) {
2024-03-25 02:24:26 +00:00
const index = trainer.getNextSummonIndex(enemyPokemon.trainerSlot, partyMemberScores);
battle.turnCommands[this.fieldIndex + BattlerIndex.ENEMY] =
{ command: Command.POKEMON, cursor: index, args: [false] };
2024-05-23 23:45:04 +00:00
battle.enemySwitchCounter++;
return this.end();
}
}
}
}
/** Select a move to use (and a target to use it against, if applicable) */
const nextMove = enemyPokemon.getNextMove();
this.scene.currentBattle.turnCommands[this.fieldIndex + BattlerIndex.ENEMY] =
{ command: Command.FIGHT, move: nextMove };
this.scene.currentBattle.enemySwitchCounter = Math.max(this.scene.currentBattle.enemySwitchCounter - 1, 0);
this.end();
}
}
export class SelectTargetPhase extends PokemonPhase {
constructor(scene: BattleScene, fieldIndex: integer) {
super(scene, fieldIndex);
}
start() {
super.start();
const turnCommand = this.scene.currentBattle.turnCommands[this.fieldIndex];
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
const move = turnCommand?.move?.move;
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
this.scene.ui.setMode(Mode.TARGET_SELECT, this.fieldIndex, move, (targets: BattlerIndex[]) => {
this.scene.ui.setMode(Mode.MESSAGE);
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
if (targets.length < 1) {
this.scene.currentBattle.turnCommands[this.fieldIndex] = null;
this.scene.unshiftPhase(new CommandPhase(this.scene, this.fieldIndex));
} else {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
turnCommand!.targets = targets; //TODO: is the bang correct here?
}
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
if (turnCommand?.command === Command.BALL && this.fieldIndex) {
this.scene.currentBattle.turnCommands[this.fieldIndex - 1]!.skip = true; //TODO: is the bang correct here?
}
this.end();
});
}
}
export class TurnStartPhase extends FieldPhase {
constructor(scene: BattleScene) {
super(scene);
}
start() {
super.start();
const field = this.scene.getField();
const order = this.getOrder();
2024-05-15 13:42:45 +00:00
const battlerBypassSpeed = {};
this.scene.getField(true).filter(p => p.summonData).map(p => {
const bypassSpeed = new Utils.BooleanHolder(false);
const canCheckHeldItems = new Utils.BooleanHolder(true);
applyAbAttrs(BypassSpeedChanceAbAttr, p, null, bypassSpeed);
applyAbAttrs(PreventBypassSpeedChanceAbAttr, p, null, bypassSpeed, canCheckHeldItems);
if (canCheckHeldItems.value) {
this.scene.applyModifiers(BypassSpeedChanceModifier, p.isPlayer(), p, bypassSpeed);
}
2024-05-15 13:42:45 +00:00
battlerBypassSpeed[p.getBattlerIndex()] = bypassSpeed;
});
const moveOrder = order.slice(0);
moveOrder.sort((a, b) => {
const aCommand = this.scene.currentBattle.turnCommands[a];
const bCommand = this.scene.currentBattle.turnCommands[b];
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
if (aCommand?.command !== bCommand?.command) {
if (aCommand?.command === Command.FIGHT) {
return 1;
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
} else if (bCommand?.command === Command.FIGHT) {
return -1;
}
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
} else if (aCommand?.command === Command.FIGHT) {
const aMove = allMoves[aCommand.move!.move];//TODO: is the bang correct here?
const bMove = allMoves[bCommand!.move!.move];//TODO: is the bang correct here?
2024-03-28 20:24:11 +00:00
const aPriority = new Utils.IntegerHolder(aMove.priority);
const bPriority = new Utils.IntegerHolder(bMove.priority);
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
applyMoveAttrs(IncrementMovePriorityAttr, this.scene.getField().find(p => p?.isActive() && p.getBattlerIndex() === a)!, null, aMove, aPriority); //TODO: is the bang correct here?
applyMoveAttrs(IncrementMovePriorityAttr, this.scene.getField().find(p => p?.isActive() && p.getBattlerIndex() === b)!, null, bMove, bPriority); //TODO: is the bang correct here?
2024-05-19 22:52:51 +00:00
applyAbAttrs(ChangeMovePriorityAbAttr, this.scene.getField().find(p => p?.isActive() && p.getBattlerIndex() === a)!, null, aMove, aPriority); //TODO: is the bang correct here?
applyAbAttrs(ChangeMovePriorityAbAttr, this.scene.getField().find(p => p?.isActive() && p.getBattlerIndex() === b)!, null, bMove, bPriority); //TODO: is the bang correct here?
2024-05-23 23:45:04 +00:00
if (aPriority.value !== bPriority.value) {
const bracketDifference = Math.ceil(aPriority.value) - Math.ceil(bPriority.value);
const hasSpeedDifference = battlerBypassSpeed[a].value !== battlerBypassSpeed[b].value;
if (bracketDifference === 0 && hasSpeedDifference) {
return battlerBypassSpeed[a].value ? -1 : 1;
}
2024-03-28 20:24:11 +00:00
return aPriority.value < bPriority.value ? 1 : -1;
}
}
2024-05-15 13:42:45 +00:00
if (battlerBypassSpeed[a].value !== battlerBypassSpeed[b].value) {
2024-05-15 13:42:45 +00:00
return battlerBypassSpeed[a].value ? -1 : 1;
}
2024-05-23 23:45:04 +00:00
const aIndex = order.indexOf(a);
const bIndex = order.indexOf(b);
return aIndex < bIndex ? -1 : aIndex > bIndex ? 1 : 0;
});
let orderIndex = 0;
for (const o of moveOrder) {
const pokemon = field[o];
const turnCommand = this.scene.currentBattle.turnCommands[o];
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
if (turnCommand?.skip) {
continue;
}
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
switch (turnCommand?.command) {
case Command.FIGHT:
const queuedMove = turnCommand.move;
pokemon.turnData.order = orderIndex++;
if (!queuedMove) {
continue;
}
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
const move = pokemon.getMoveset().find(m => m?.moveId === queuedMove.move) || new PokemonMove(queuedMove.move);
2024-08-07 18:32:56 +00:00
if (move.getMove().hasAttr(MoveHeaderAttr)) {
this.scene.unshiftPhase(new MoveHeaderPhase(this.scene, pokemon, move));
}
if (pokemon.isPlayer()) {
if (turnCommand.cursor === -1) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.pushPhase(new MovePhase(this.scene, pokemon, turnCommand.targets || turnCommand.move!.targets, move));//TODO: is the bang correct here?
} else {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
const playerPhase = new MovePhase(this.scene, pokemon, turnCommand.targets || turnCommand.move!.targets, move, false, queuedMove.ignorePP);//TODO: is the bang correct here?
this.scene.pushPhase(playerPhase);
}
} else {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.pushPhase(new MovePhase(this.scene, pokemon, turnCommand.targets || turnCommand.move!.targets, move, false, queuedMove.ignorePP));//TODO: is the bang correct here?
}
break;
case Command.BALL:
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.unshiftPhase(new AttemptCapturePhase(this.scene, turnCommand.targets![0] % 2, turnCommand.cursor!));//TODO: is the bang correct here?
break;
case Command.POKEMON:
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.unshiftPhase(new SwitchSummonPhase(this.scene, pokemon.getFieldIndex(), turnCommand.cursor!, true, turnCommand.args![0] as boolean, pokemon.isPlayer()));//TODO: is the bang correct here?
break;
case Command.RUN:
let runningPokemon = pokemon;
if (this.scene.currentBattle.double) {
const playerActivePokemon = field.filter(pokemon => {
if (!!pokemon) {
return pokemon.isPlayer() && pokemon.isActive();
} else {
return;
}
});
// if only one pokemon is alive, use that one
if (playerActivePokemon.length > 1) {
// find which active pokemon has faster speed
const fasterPokemon = playerActivePokemon[0].getStat(Stat.SPD) > playerActivePokemon[1].getStat(Stat.SPD) ? playerActivePokemon[0] : playerActivePokemon[1];
// check if either active pokemon has the ability "Run Away"
const hasRunAway = playerActivePokemon.find(p => p.hasAbility(Abilities.RUN_AWAY));
runningPokemon = hasRunAway !== undefined ? hasRunAway : fasterPokemon;
}
}
this.scene.unshiftPhase(new AttemptRunPhase(this.scene, runningPokemon.getFieldIndex()));
break;
}
}
this.scene.pushPhase(new WeatherEffectPhase(this.scene));
for (const o of order) {
if (field[o].status && field[o].status.isPostTurn()) {
this.scene.pushPhase(new PostTurnStatusEffectPhase(this.scene, o));
}
}
this.scene.pushPhase(new BerryPhase(this.scene));
this.scene.pushPhase(new TurnEndPhase(this.scene));
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
/**
* this.end() will call shiftPhase(), which dumps everything from PrependQueue (aka everything that is unshifted()) to the front
* of the queue and dequeues to start the next phase
* this is important since stuff like SwitchSummon, AttemptRun, AttemptCapture Phases break the "flow" and should take precedence
*/
this.end();
}
}
/** The phase after attacks where the pokemon eat berries */
export class BerryPhase extends FieldPhase {
start() {
super.start();
this.executeForAll((pokemon) => {
const hasUsableBerry = !!this.scene.findModifier((m) => {
return m instanceof BerryModifier && m.shouldApply([pokemon]);
}, pokemon.isPlayer());
if (hasUsableBerry) {
const cancelled = new Utils.BooleanHolder(false);
pokemon.getOpponents().map((opp) => applyAbAttrs(PreventBerryUseAbAttr, opp, cancelled));
if (cancelled.value) {
pokemon.scene.queueMessage(i18next.t("abilityTriggers:preventBerryUse", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }));
} else {
this.scene.unshiftPhase(
new CommonAnimPhase(this.scene, pokemon.getBattlerIndex(), pokemon.getBattlerIndex(), CommonAnim.USE_ITEM)
);
for (const berryModifier of this.scene.applyModifiers(BerryModifier, pokemon.isPlayer(), pokemon) as BerryModifier[]) {
if (berryModifier.consumed) {
if (!--berryModifier.stackCount) {
this.scene.removeModifier(berryModifier);
} else {
berryModifier.consumed = false;
}
}
this.scene.eventTarget.dispatchEvent(new BerryUsedEvent(berryModifier)); // Announce a berry was used
}
this.scene.updateModifiers(pokemon.isPlayer());
applyAbAttrs(HealFromBerryUseAbAttr, pokemon, new Utils.BooleanHolder(false));
}
}
});
this.end();
}
}
export class TurnEndPhase extends FieldPhase {
2023-04-13 16:16:36 +00:00
constructor(scene: BattleScene) {
super(scene);
}
start() {
super.start();
this.scene.currentBattle.incrementTurn(this.scene);
this.scene.eventTarget.dispatchEvent(new TurnEndEvent(this.scene.currentBattle.turn));
2024-05-23 23:45:04 +00:00
2023-04-19 22:19:55 +00:00
const handlePokemon = (pokemon: Pokemon) => {
2023-04-21 23:30:04 +00:00
pokemon.lapseTags(BattlerTagLapseType.TURN_END);
2024-05-23 23:45:04 +00:00
2023-10-25 13:41:37 +00:00
if (pokemon.summonData.disabledMove && !--pokemon.summonData.disabledTurns) {
this.scene.pushPhase(new MessagePhase(this.scene, i18next.t("battle:notDisabled", { pokemonName: getPokemonNameWithAffix(pokemon), moveName: allMoves[pokemon.summonData.disabledMove].name })));
2024-02-25 17:45:41 +00:00
pokemon.summonData.disabledMove = Moves.NONE;
2023-04-19 22:19:55 +00:00
}
2023-04-21 00:15:16 +00:00
this.scene.applyModifiers(TurnHealModifier, pokemon.isPlayer(), pokemon);
if (this.scene.arena.terrain?.terrainType === TerrainType.GRASSY && pokemon.isGrounded()) {
this.scene.unshiftPhase(new PokemonHealPhase(this.scene, pokemon.getBattlerIndex(),
Math.max(pokemon.getMaxHp() >> 4, 1), i18next.t("battle:turnEndHpRestore", { pokemonName: getPokemonNameWithAffix(pokemon) }), true));
}
if (!pokemon.isPlayer()) {
this.scene.applyModifiers(EnemyTurnHealModifier, false, pokemon);
this.scene.applyModifier(EnemyStatusEffectHealChanceModifier, false, pokemon);
}
applyPostTurnAbAttrs(PostTurnAbAttr, pokemon);
2023-05-02 19:56:41 +00:00
this.scene.applyModifiers(TurnStatusEffectModifier, pokemon.isPlayer(), pokemon);
this.scene.applyModifiers(TurnHeldItemTransferModifier, pokemon.isPlayer(), pokemon);
2023-04-23 14:24:22 +00:00
2023-04-19 22:19:55 +00:00
pokemon.battleSummonData.turnCount++;
};
this.executeForAll(handlePokemon);
2024-05-23 23:45:04 +00:00
2023-04-21 23:30:04 +00:00
this.scene.arena.lapseTags();
2023-04-13 16:16:36 +00:00
if (this.scene.arena.weather && !this.scene.arena.weather.lapse()) {
this.scene.arena.trySetWeather(WeatherType.NONE, false);
}
if (this.scene.arena.terrain && !this.scene.arena.terrain.lapse()) {
2024-03-26 14:08:17 +00:00
this.scene.arena.trySetTerrain(TerrainType.NONE, false);
}
2024-03-26 14:08:17 +00:00
2023-04-13 16:16:36 +00:00
this.end();
}
}
export class BattleEndPhase extends BattlePhase {
start() {
super.start();
2024-03-17 15:36:19 +00:00
this.scene.currentBattle.addBattleScore(this.scene);
this.scene.gameData.gameStats.battles++;
if (this.scene.currentBattle.trainer) {
this.scene.gameData.gameStats.trainersDefeated++;
}
if (this.scene.gameMode.isEndless && this.scene.currentBattle.waveIndex + 1 > this.scene.gameData.gameStats.highestEndlessWave) {
this.scene.gameData.gameStats.highestEndlessWave = this.scene.currentBattle.waveIndex + 1;
}
2024-05-28 01:01:13 +00:00
// Endless graceful end
if (this.scene.gameMode.isEndless && this.scene.currentBattle.waveIndex >= 5850) {
this.scene.clearPhaseQueue();
this.scene.unshiftPhase(new GameOverPhase(this.scene, true));
}
for (const pokemon of this.scene.getField()) {
if (pokemon) {
pokemon.resetBattleSummonData();
}
}
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
for (const pokemon of this.scene.getParty().filter(p => p.isAllowedInBattle())) {
2024-03-07 02:05:23 +00:00
applyPostBattleAbAttrs(PostBattleAbAttr, pokemon);
}
2024-03-07 02:05:23 +00:00
if (this.scene.currentBattle.moneyScattered) {
this.scene.currentBattle.pickUpScatteredMoney(this.scene);
}
this.scene.clearEnemyHeldItemModifiers();
2023-04-20 23:44:56 +00:00
const lapsingModifiers = this.scene.findModifiers(m => m instanceof LapsingPersistentModifier || m instanceof LapsingPokemonHeldItemModifier) as (LapsingPersistentModifier | LapsingPokemonHeldItemModifier)[];
for (const m of lapsingModifiers) {
const args: any[] = [];
if (m instanceof LapsingPokemonHeldItemModifier) {
args.push(this.scene.getPokemonById(m.pokemonId));
}
if (!m.lapse(args)) {
this.scene.removeModifier(m);
}
}
this.scene.updateModifiers().then(() => this.end());
}
}
export class NewBattlePhase extends BattlePhase {
start() {
super.start();
2023-04-10 18:12:01 +00:00
this.scene.newBattle();
2023-04-10 18:12:01 +00:00
this.end();
2023-04-10 18:12:01 +00:00
}
}
2023-04-14 05:08:44 +00:00
export class CommonAnimPhase extends PokemonPhase {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
private anim: CommonAnim | null;
private targetIndex: integer | undefined;
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
constructor(scene: BattleScene, battlerIndex?: BattlerIndex, targetIndex?: BattlerIndex | undefined, anim?: CommonAnim) {
super(scene, battlerIndex);
2023-04-14 05:08:44 +00:00
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.anim = anim!; // TODO: is this bang correct?
this.targetIndex = targetIndex;
2023-04-14 05:08:44 +00:00
}
setAnimation(anim: CommonAnim) {
this.anim = anim;
}
2023-04-14 05:08:44 +00:00
start() {
2023-05-19 17:02:58 +00:00
new CommonBattleAnim(this.anim, this.getPokemon(), this.targetIndex !== undefined ? (this.player ? this.scene.getEnemyField() : this.scene.getPlayerField())[this.targetIndex] : this.getPokemon()).play(this.scene, () => {
2023-04-14 05:08:44 +00:00
this.end();
});
}
}
2024-08-07 18:32:56 +00:00
export class MoveHeaderPhase extends BattlePhase {
public pokemon: Pokemon;
public move: PokemonMove;
constructor(scene: BattleScene, pokemon: Pokemon, move: PokemonMove) {
super(scene);
this.pokemon = pokemon;
this.move = move;
}
canMove(): boolean {
return this.pokemon.isActive(true) && this.move.isUsable(this.pokemon);
}
start() {
super.start();
if (this.canMove()) {
applyMoveAttrs(MoveHeaderAttr, this.pokemon, null, this.move.getMove()).then(() => this.end());
} else {
this.end();
}
}
}
export class MovePhase extends BattlePhase {
public pokemon: Pokemon;
public move: PokemonMove;
2024-03-28 04:24:24 +00:00
public targets: BattlerIndex[];
2023-04-16 22:40:32 +00:00
protected followUp: boolean;
protected ignorePp: boolean;
protected failed: boolean;
2023-04-11 23:08:03 +00:00
protected cancelled: boolean;
2023-04-10 18:12:01 +00:00
constructor(scene: BattleScene, pokemon: Pokemon, targets: BattlerIndex[], move: PokemonMove, followUp?: boolean, ignorePp?: boolean) {
2023-04-10 18:12:01 +00:00
super(scene);
this.pokemon = pokemon;
this.targets = targets;
2023-04-10 18:12:01 +00:00
this.move = move;
2023-04-16 22:40:32 +00:00
this.followUp = !!followUp;
this.ignorePp = !!ignorePp;
this.failed = false;
2023-04-11 23:08:03 +00:00
this.cancelled = false;
2023-04-10 18:12:01 +00:00
}
canMove(): boolean {
2023-10-25 13:41:37 +00:00
return this.pokemon.isActive(true) && this.move.isUsable(this.pokemon, this.ignorePp) && !!this.targets.length;
2023-04-10 18:12:01 +00:00
}
/**Signifies the current move should fail but still use PP */
fail(): void {
this.failed = true;
}
/**Signifies the current move should cancel and retain PP */
2023-04-15 05:32:16 +00:00
cancel(): void {
this.cancelled = true;
}
2023-04-10 18:12:01 +00:00
start() {
super.start();
2023-04-19 22:19:55 +00:00
console.log(Moves[this.move.moveId]);
2023-05-04 20:38:56 +00:00
if (!this.canMove()) {
if (this.move.moveId && this.pokemon.summonData?.disabledMove === this.move.moveId) {
2023-05-04 20:38:56 +00:00
this.scene.queueMessage(`${this.move.getName()} is disabled!`);
}
if (this.pokemon.isActive(true) && this.move.ppUsed >= this.move.getMovePp()) { // if the move PP was reduced from Spite or otherwise, the move fails
this.fail();
this.showMoveText();
this.showFailedText();
}
2023-12-07 22:43:56 +00:00
return this.end();
2023-05-04 20:38:56 +00:00
}
if (!this.followUp) {
if (this.move.getMove().checkFlag(MoveFlags.IGNORE_ABILITIES, this.pokemon, null)) {
this.scene.arena.setIgnoreAbilities();
}
2024-04-03 15:42:09 +00:00
} else {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.pokemon.turnData.hitsLeft = 0; // TODO: is `0` correct?
this.pokemon.turnData.hitCount = 0; // TODO: is `0` correct?
}
// Move redirection abilities (ie. Storm Drain) only support single target moves
const moveTarget = this.targets.length === 1
? new Utils.IntegerHolder(this.targets[0])
: null;
if (moveTarget) {
const oldTarget = moveTarget.value;
this.scene.getField(true).filter(p => p !== this.pokemon).forEach(p => applyAbAttrs(RedirectMoveAbAttr, p, null, this.move.moveId, moveTarget));
this.pokemon.getOpponents().forEach(p => {
const redirectTag = p.getTag(CenterOfAttentionTag) as CenterOfAttentionTag;
if (redirectTag && (!redirectTag.powder || (!this.pokemon.isOfType(Type.GRASS) && !this.pokemon.hasAbility(Abilities.OVERCOAT)))) {
moveTarget.value = p.getBattlerIndex();
}
});
//Check if this move is immune to being redirected, and restore its target to the intended target if it is.
if ((this.pokemon.hasAbilityWithAttr(BlockRedirectAbAttr) || this.move.getMove().hasAttr(BypassRedirectAttr))) {
//If an ability prevented this move from being redirected, display its ability pop up.
if ((this.pokemon.hasAbilityWithAttr(BlockRedirectAbAttr) && !this.move.getMove().hasAttr(BypassRedirectAttr)) && oldTarget !== moveTarget.value) {
this.scene.unshiftPhase(new ShowAbilityPhase(this.scene, this.pokemon.getBattlerIndex(), this.pokemon.getPassiveAbility().hasAttr(BlockRedirectAbAttr)));
}
moveTarget.value = oldTarget;
}
this.targets[0] = moveTarget.value;
}
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
// Check for counterattack moves to switch target
if (this.targets.length === 1 && this.targets[0] === BattlerIndex.ATTACKER) {
if (this.pokemon.turnData.attacksReceived.length) {
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
const attack = this.pokemon.turnData.attacksReceived[0];
this.targets[0] = attack.sourceBattlerIndex;
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
// account for metal burst and comeuppance hitting remaining targets in double battles
// counterattack will redirect to remaining ally if original attacker faints
if (this.scene.currentBattle.double && this.move.getMove().hasFlag(MoveFlags.REDIRECT_COUNTER)) {
if (this.scene.getField()[this.targets[0]].hp === 0) {
const opposingField = this.pokemon.isPlayer() ? this.scene.getEnemyField() : this.scene.getPlayerField();
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
//@ts-ignore
this.targets[0] = opposingField.find(p => p.hp > 0)?.getBattlerIndex(); //TODO: fix ts-ignore
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
}
}
}
if (this.targets[0] === BattlerIndex.ATTACKER) {
this.fail(); // Marks the move as failed for later in doMove
this.showMoveText();
this.showFailedText();
}
}
const targets = this.scene.getField(true).filter(p => {
if (this.targets.indexOf(p.getBattlerIndex()) > -1) {
return true;
}
return false;
});
2023-04-16 22:40:32 +00:00
2023-04-11 23:08:03 +00:00
const doMove = () => {
this.pokemon.turnData.acted = true; // Record that the move was attempted, even if it fails
2024-05-23 23:45:04 +00:00
this.pokemon.lapseTags(BattlerTagLapseType.PRE_MOVE);
2024-05-23 23:45:04 +00:00
let ppUsed = 1;
// Filter all opponents to include only those this move is targeting
const targetedOpponents = this.pokemon.getOpponents().filter(o => this.targets.includes(o.getBattlerIndex()));
for (const opponent of targetedOpponents) {
if (this.move.ppUsed + ppUsed >= this.move.getMovePp()) { // If we're already at max PP usage, stop checking
break;
}
if (opponent.hasAbilityWithAttr(IncreasePpAbAttr)) { // Accounting for abilities like Pressure
ppUsed++;
}
}
2024-05-23 23:45:04 +00:00
if (!this.followUp && this.canMove() && !this.cancelled) {
this.pokemon.lapseTags(BattlerTagLapseType.MOVE);
}
const moveQueue = this.pokemon.getMoveQueue();
if (this.cancelled || this.failed) {
if (this.failed) {
2024-05-24 22:01:47 +00:00
this.move.usePp(ppUsed); // Only use PP if the move failed
this.scene.eventTarget.dispatchEvent(new MoveUsedEvent(this.pokemon?.id, this.move.getMove(), this.move.ppUsed));
2024-05-24 22:01:47 +00:00
}
// Record a failed move so Abilities like Truant don't trigger next turn and soft-lock
this.pokemon.pushMoveHistory({ move: Moves.NONE, result: MoveResult.FAIL });
this.pokemon.lapseTags(BattlerTagLapseType.MOVE_EFFECT); // Remove any tags from moves like Fly/Dive/etc.
moveQueue.shift(); // Remove the second turn of charge moves
return this.end();
}
this.scene.triggerPokemonFormChange(this.pokemon, SpeciesFormChangePreMoveTrigger);
if (this.move.moveId) {
2023-11-27 18:47:32 +00:00
this.showMoveText();
}
// This should only happen when there are no valid targets left on the field
2024-05-23 23:45:04 +00:00
if ((moveQueue.length && moveQueue[0].move === Moves.NONE) || !targets.length) {
this.showFailedText();
2023-04-21 01:32:48 +00:00
this.cancel();
2024-05-23 23:45:04 +00:00
// Record a failed move so Abilities like Truant don't trigger next turn and soft-lock
this.pokemon.pushMoveHistory({ move: Moves.NONE, result: MoveResult.FAIL });
this.pokemon.lapseTags(BattlerTagLapseType.MOVE_EFFECT); // Remove any tags from moves like Fly/Dive/etc.
moveQueue.shift();
2023-12-07 22:43:56 +00:00
return this.end();
2023-04-11 23:08:03 +00:00
}
2023-04-16 22:40:32 +00:00
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
if (!moveQueue.length || !moveQueue.shift()?.ignorePP) { // using .shift here clears out two turn moves once they've been used
this.move.usePp(ppUsed);
this.scene.eventTarget.dispatchEvent(new MoveUsedEvent(this.pokemon?.id, this.move.getMove(), this.move.ppUsed));
}
2023-04-16 22:40:32 +00:00
if (!allMoves[this.move.moveId].hasAttr(CopyMoveAttr)) {
this.scene.currentBattle.lastMove = this.move.moveId;
}
// Assume conditions affecting targets only apply to moves with a single target
let success = this.move.getMove().applyConditions(this.pokemon, targets[0], this.move.getMove());
const cancelled = new Utils.BooleanHolder(false);
let failedText = this.move.getMove().getFailedText(this.pokemon, targets[0], this.move.getMove(), cancelled);
if (success && this.scene.arena.isMoveWeatherCancelled(this.move.getMove())) {
success = false;
} else if (success && this.scene.arena.isMoveTerrainCancelled(this.pokemon, this.targets, this.move.getMove())) {
success = false;
if (failedText === null) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
failedText = getTerrainBlockMessage(targets[0], this.scene.arena.terrain?.terrainType!); // TODO: is this bang correct?
}
}
/**
* Trigger pokemon type change before playing the move animation
* Will still change the user's type when using Roar, Whirlwind, Trick-or-Treat, and Forest's Curse,
* regardless of whether the move successfully executes or not.
*/
if (success || [Moves.ROAR, Moves.WHIRLWIND, Moves.TRICK_OR_TREAT, Moves.FORESTS_CURSE].includes(this.move.moveId)) {
applyPreAttackAbAttrs(PokemonTypeChangeAbAttr, this.pokemon, null, this.move.getMove());
}
if (success) {
this.scene.unshiftPhase(this.getEffectPhase());
} else {
this.pokemon.pushMoveHistory({ move: this.move.moveId, targets: this.targets, result: MoveResult.FAIL, virtual: this.move.virtual });
if (!cancelled.value) {
this.showFailedText(failedText);
}
}
// Checks if Dancer ability is triggered
if (this.move.getMove().hasFlag(MoveFlags.DANCE_MOVE) && !this.followUp) {
// Pokemon with Dancer can be on either side of the battle so we check in both cases
this.scene.getPlayerField().forEach(pokemon => {
applyPostMoveUsedAbAttrs(PostMoveUsedAbAttr, pokemon, this.move, this.pokemon, this.targets);
});
this.scene.getEnemyField().forEach(pokemon => {
applyPostMoveUsedAbAttrs(PostMoveUsedAbAttr, pokemon, this.move, this.pokemon, this.targets);
});
}
2023-04-11 23:08:03 +00:00
this.end();
};
2023-04-16 22:40:32 +00:00
if (!this.followUp && this.pokemon.status && !this.pokemon.status.isPostTurn()) {
2023-04-11 23:08:03 +00:00
this.pokemon.status.incrementTurn();
let activated = false;
let healed = false;
2024-05-23 23:45:04 +00:00
2023-04-11 23:08:03 +00:00
switch (this.pokemon.status.effect) {
case StatusEffect.PARALYSIS:
if (!this.pokemon.randSeedInt(4)) {
activated = true;
this.cancelled = true;
}
break;
case StatusEffect.SLEEP:
applyMoveAttrs(BypassSleepAttr, this.pokemon, null, this.move.getMove());
healed = this.pokemon.status.turnCount === this.pokemon.status.cureTurn;
activated = !healed && !this.pokemon.getTag(BattlerTagType.BYPASS_SLEEP);
this.cancelled = activated;
break;
case StatusEffect.FREEZE:
healed = !!this.move.getMove().findAttr(attr => attr instanceof HealStatusEffectAttr && attr.selfTarget && attr.isOfEffect(StatusEffect.FREEZE)) || !this.pokemon.randSeedInt(5);
activated = !healed;
this.cancelled = activated;
break;
2023-04-11 23:08:03 +00:00
}
2024-05-23 23:45:04 +00:00
2023-04-11 23:08:03 +00:00
if (activated) {
[Localization] localized status-effect.ts and translate. (#2528) * make postposition not to dynamic for localize * localize status-effect.ts * added test code, modified english postposition, modifed toxic_orb test to make it always fix in English. * Update src/locales/zh_CN/status-effect.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/status-effect.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/status-effect.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/status-effect.ts * added test code for check message key * remove multi-language tests (except english) * Update src/locales/pt_BR/status-effect.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * remove language and change test code to check method call and parameter * Update src/locales/es/status-effect.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/en/status-effect.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Apply review suggestion * Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * add Test with empty string parameter * Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update src/locales/fr/status-effect.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com>
2024-07-02 14:22:46 +00:00
this.scene.queueMessage(getStatusEffectActivationText(this.pokemon.status.effect, getPokemonNameWithAffix(this.pokemon)));
this.scene.unshiftPhase(new CommonAnimPhase(this.scene, this.pokemon.getBattlerIndex(), undefined, CommonAnim.POISON + (this.pokemon.status.effect - 1)));
2023-04-15 05:32:16 +00:00
doMove();
2023-04-11 23:08:03 +00:00
} else {
if (healed) {
[Localization] localized status-effect.ts and translate. (#2528) * make postposition not to dynamic for localize * localize status-effect.ts * added test code, modified english postposition, modifed toxic_orb test to make it always fix in English. * Update src/locales/zh_CN/status-effect.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/status-effect.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/status-effect.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/status-effect.ts * added test code for check message key * remove multi-language tests (except english) * Update src/locales/pt_BR/status-effect.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * remove language and change test code to check method call and parameter * Update src/locales/es/status-effect.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/en/status-effect.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Apply review suggestion * Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * add Test with empty string parameter * Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update src/locales/fr/status-effect.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com>
2024-07-02 14:22:46 +00:00
this.scene.queueMessage(getStatusEffectHealText(this.pokemon.status.effect, getPokemonNameWithAffix(this.pokemon)));
2023-04-11 23:08:03 +00:00
this.pokemon.resetStatus();
2023-04-20 19:46:05 +00:00
this.pokemon.updateInfo();
2023-04-11 23:08:03 +00:00
}
doMove();
}
} else {
2023-04-11 23:08:03 +00:00
doMove();
}
2023-04-10 18:12:01 +00:00
}
2023-04-16 22:40:32 +00:00
2023-04-10 18:12:01 +00:00
getEffectPhase(): MoveEffectPhase {
return new MoveEffectPhase(this.scene, this.pokemon.getBattlerIndex(), this.targets, this.move);
2023-04-10 18:12:01 +00:00
}
showMoveText(): void {
if (this.move.getMove().hasAttr(ChargeAttr)) {
2023-12-12 02:46:49 +00:00
const lastMove = this.pokemon.getLastXMoves() as TurnMove[];
if (!lastMove.length || lastMove[0].move !== this.move.getMove().id || lastMove[0].result !== MoveResult.OTHER) {
this.scene.queueMessage(i18next.t("battle:useMove", {
pokemonNameWithAffix: getPokemonNameWithAffix(this.pokemon),
moveName: this.move.getName()
}), 500);
2023-12-12 02:46:49 +00:00
return;
}
2023-12-12 02:46:49 +00:00
}
2024-01-08 04:17:24 +00:00
if (this.pokemon.getTag(BattlerTagType.RECHARGING || BattlerTagType.INTERRUPTED)) {
2024-01-08 04:17:24 +00:00
return;
}
2024-05-23 23:45:04 +00:00
this.scene.queueMessage(i18next.t("battle:useMove", {
pokemonNameWithAffix: getPokemonNameWithAffix(this.pokemon),
moveName: this.move.getName()
}), 500);
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
applyMoveAttrs(PreMoveMessageAttr, this.pokemon, this.pokemon.getOpponents().find(() => true)!, this.move.getMove()); //TODO: is the bang correct here?
}
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
showFailedText(failedText: string | null = null): void {
this.scene.queueMessage(failedText || i18next.t("battle:attackFailed"));
}
end() {
if (!this.followUp && this.canMove()) {
this.scene.unshiftPhase(new MoveEndPhase(this.scene, this.pokemon.getBattlerIndex()));
}
2023-04-10 18:12:01 +00:00
super.end();
2023-04-10 18:12:01 +00:00
}
}
2023-12-04 05:09:38 +00:00
export class MoveEffectPhase extends PokemonPhase {
2024-03-13 21:09:23 +00:00
public move: PokemonMove;
protected targets: BattlerIndex[];
2024-05-23 23:45:04 +00:00
constructor(scene: BattleScene, battlerIndex: BattlerIndex, targets: BattlerIndex[], move: PokemonMove) {
super(scene, battlerIndex);
2023-04-10 18:12:01 +00:00
this.move = move;
/**
* In double battles, if the right Pokemon selects a spread move and the left Pokemon dies
* with no party members available to switch in, then the right Pokemon takes the index
* of the left Pokemon and gets hit unless this is checked.
*/
if (targets.includes(battlerIndex) && this.move.getMove().moveTarget === MoveTarget.ALL_NEAR_OTHERS) {
const i = targets.indexOf(battlerIndex);
targets.splice(i, i + 1);
}
this.targets = targets;
2023-04-10 18:12:01 +00:00
}
start() {
super.start();
/** The Pokemon using this phase's invoked move */
2023-04-10 18:12:01 +00:00
const user = this.getUserPokemon();
/** All Pokemon targeted by this phase's invoked move */
const targets = this.getTargets();
2023-04-10 18:12:01 +00:00
/** If the user was somehow removed from the field, end this phase */
if (!user?.isOnField()) {
return super.end();
}
2023-12-07 22:43:56 +00:00
/**
* Does an effect from this move override other effects on this turn?
* e.g. Charging moves (Fly, etc.) on their first turn of use.
*/
2023-04-13 16:16:36 +00:00
const overridden = new Utils.BooleanHolder(false);
/** The {@linkcode Move} object from {@linkcode allMoves} invoked by this phase */
const move = this.move.getMove();
2023-04-10 20:17:25 +00:00
// Assume single target for override
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
applyMoveAttrs(OverrideMoveEffectAttr, user, this.getTarget() ?? null, move, overridden, this.move.virtual).then(() => {
// If other effects were overriden, stop this phase before they can be applied
if (overridden.value) {
2023-12-07 22:43:56 +00:00
return this.end();
}
2024-05-23 23:45:04 +00:00
2023-04-21 23:30:04 +00:00
user.lapseTags(BattlerTagLapseType.MOVE_EFFECT);
2023-04-13 16:16:36 +00:00
/**
* If this phase is for the first hit of the invoked move,
* resolve the move's total hit count. This block combines the
* effects of the move itself, Parental Bond, and Multi-Lens to do so.
*/
2023-04-13 16:16:36 +00:00
if (user.turnData.hitsLeft === undefined) {
const hitCount = new Utils.IntegerHolder(1);
// Assume single target for multi hit
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
applyMoveAttrs(MultiHitAttr, user, this.getTarget() ?? null, move, hitCount);
// If Parental Bond is applicable, double the hit count
applyPreAttackAbAttrs(AddSecondStrikeAbAttr, user, null, move, targets.length, hitCount, new Utils.IntegerHolder(0));
// If Multi-Lens is applicable, multiply the hit count by 1 + the number of Multi-Lenses held by the user
if (move instanceof AttackMove && !move.hasAttr(FixedDamageAttr)) {
2024-04-03 15:42:09 +00:00
this.scene.applyModifiers(PokemonMultiHitModifier, user.isPlayer(), user, hitCount, new Utils.IntegerHolder(0));
}
// Set the user's relevant turnData fields to reflect the final hit count
user.turnData.hitCount = hitCount.value;
user.turnData.hitsLeft = hitCount.value;
2023-04-13 16:16:36 +00:00
}
/**
* Log to be entered into the user's move history once the move result is resolved.
* Note that `result` (a {@linkcode MoveResult}) logs whether the move was successfully
* used in the sense of "Does it have an effect on the user?".
*/
const moveHistoryEntry = { move: this.move.moveId, targets: this.targets, result: MoveResult.PENDING, virtual: this.move.virtual };
/**
* Stores results of hit checks of the invoked move against all targets, organized by battler index.
* @see {@linkcode hitCheck}
*/
const targetHitChecks = Object.fromEntries(targets.map(p => [p.getBattlerIndex(), this.hitCheck(p)]));
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
const hasActiveTargets = targets.some(t => t.isActive(true));
/**
* If no targets are left for the move to hit (FAIL), or the invoked move is single-target
* (and not random target) and failed the hit check against its target (MISS), log the move
* as FAILed or MISSed (depending on the conditions above) and end this phase.
*/
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
if (!hasActiveTargets || (!move.hasAttr(VariableTargetAttr) && !move.isMultiTarget() && !targetHitChecks[this.targets[0]])) {
this.stopMultiHit();
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
if (hasActiveTargets) {
this.scene.queueMessage(i18next.t("battle:attackMissed", { pokemonNameWithAffix: this.getTarget()? getPokemonNameWithAffix(this.getTarget()!) : "" }));
moveHistoryEntry.result = MoveResult.MISS;
applyMoveAttrs(MissEffectAttr, user, null, move);
} else {
this.scene.queueMessage(i18next.t("battle:attackFailed"));
moveHistoryEntry.result = MoveResult.FAIL;
}
user.pushMoveHistory(moveHistoryEntry);
2023-12-07 22:43:56 +00:00
return this.end();
2023-04-10 18:12:01 +00:00
}
2023-04-18 16:30:47 +00:00
/** All move effect attributes are chained together in this array to be applied asynchronously. */
2023-10-31 18:09:33 +00:00
const applyAttrs: Promise<void>[] = [];
// Move animation only needs one target
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
new MoveAnim(move.id as Moves, user, this.getTarget()?.getBattlerIndex()!).play(this.scene, () => { // TODO: is the bang correct here?
/** Has the move successfully hit a target (for damage) yet? */
let hasHit: boolean = false;
for (const target of targets) {
/**
* If the move missed a target, stop all future hits against that target
* and move on to the next target (if there is one).
*/
if (!targetHitChecks[target.getBattlerIndex()]) {
this.stopMultiHit(target);
[Localization] Attack missed text is now localizable and uses the Gen 9 format instead of Gen 4 like before (#2809) * localize attack missed message (pokemon's attack missed!) * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/ko/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Localized the attack Missed message so that it now uses the Gen 9 message and no longer the Gen 4 one * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/it/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/phases.ts --------- Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com>
2024-07-05 22:29:13 +00:00
this.scene.queueMessage(i18next.t("battle:attackMissed", { pokemonNameWithAffix: getPokemonNameWithAffix(target) }));
if (moveHistoryEntry.result === MoveResult.PENDING) {
moveHistoryEntry.result = MoveResult.MISS;
}
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
user.pushMoveHistory(moveHistoryEntry);
applyMoveAttrs(MissEffectAttr, user, null, move);
continue;
2023-04-25 05:32:48 +00:00
}
/** The {@linkcode ArenaTagSide} to which the target belongs */
const targetSide = target.isPlayer() ? ArenaTagSide.PLAYER : ArenaTagSide.ENEMY;
/** Has the invoked move been cancelled by conditional protection (e.g Quick Guard)? */
const hasConditionalProtectApplied = new Utils.BooleanHolder(false);
/** Does the applied conditional protection bypass Protect-ignoring effects? */
const bypassIgnoreProtect = new Utils.BooleanHolder(false);
// If the move is not targeting a Pokemon on the user's side, try to apply conditional protection effects
if (!this.move.getMove().isAllyTarget()) {
this.scene.arena.applyTagsForSide(ConditionalProtectTag, targetSide, hasConditionalProtectApplied, user, target, move.id, bypassIgnoreProtect);
}
/** Is the target protected by Protect, etc. or a relevant conditional protection effect? */
const isProtected = (bypassIgnoreProtect.value || !this.move.getMove().checkFlag(MoveFlags.IGNORE_PROTECT, user, target))
&& (hasConditionalProtectApplied.value || target.findTags(t => t instanceof ProtectedTag).find(t => target.lapseTag(t.tagType)));
/** Does this phase represent the invoked move's first strike? */
const firstHit = (user.turnData.hitsLeft === user.turnData.hitCount);
// Only log the move's result on the first strike
if (firstHit) {
user.pushMoveHistory(moveHistoryEntry);
}
/**
* Since all fail/miss checks have applied, the move is considered successfully applied.
* It's worth noting that if the move has no effect or is protected against, this assignment
* is overwritten and the move is logged as a FAIL.
*/
moveHistoryEntry.result = MoveResult.SUCCESS;
2024-05-23 23:45:04 +00:00
/**
* Stores the result of applying the invoked move to the target.
* If the target is protected, the result is always `NO_EFFECT`.
* Otherwise, the hit result is based on type effectiveness, immunities,
* and other factors that may negate the attack or status application.
*
* Internally, the call to {@linkcode Pokemon.apply} is where damage is calculated
* (for attack moves) and the target's HP is updated. However, this isn't
* made visible to the user until the resulting {@linkcode DamagePhase}
* is invoked.
*/
const hitResult = !isProtected ? target.apply(user, move) : HitResult.NO_EFFECT;
2023-07-10 14:54:22 +00:00
/** Does {@linkcode hitResult} indicate that damage was dealt to the target? */
const dealsDamage = [
HitResult.EFFECTIVE,
HitResult.SUPER_EFFECTIVE,
HitResult.NOT_VERY_EFFECTIVE,
HitResult.ONE_HIT_KO
].includes(hitResult);
/** Is this target the first one hit by the move on its current strike? */
const firstTarget = dealsDamage && !hasHit;
if (firstTarget) {
hasHit = true;
}
/**
* If the move has no effect on the target (i.e. the target is protected or immune),
* change the logged move result to FAIL.
*/
if (hitResult === HitResult.NO_EFFECT) {
moveHistoryEntry.result = MoveResult.FAIL;
}
/** Does this phase represent the invoked move's last strike? */
const lastHit = (user.turnData.hitsLeft === 1 || !this.getTarget()?.isActive());
/**
* If the user can change forms by using the invoked move,
* it only changes forms after the move's last hit
* (see Relic Song's interaction with Parental Bond when used by Meloetta).
*/
if (lastHit) {
this.scene.triggerPokemonFormChange(user, SpeciesFormChangePostMoveTrigger);
}
2024-01-10 04:34:43 +00:00
/**
* Create a Promise that applys *all* effects from the invoked move's MoveEffectAttrs.
* These are ordered by trigger type (see {@linkcode MoveEffectTrigger}), and each trigger
* type requires different conditions to be met with respect to the move's hit result.
*/
2023-10-31 18:09:33 +00:00
applyAttrs.push(new Promise(resolve => {
// Apply all effects with PRE_MOVE triggers (if the target isn't immune to the move)
applyFilteredMoveAttrs((attr: MoveAttr) => attr instanceof MoveEffectAttr && attr.trigger === MoveEffectTrigger.PRE_APPLY && (!attr.firstHitOnly || firstHit) && (!attr.lastHitOnly || lastHit) && hitResult !== HitResult.NO_EFFECT,
user, target, move).then(() => {
// All other effects require the move to not have failed or have been cancelled to trigger
2023-10-31 18:09:33 +00:00
if (hitResult !== HitResult.FAIL) {
/** Are the move's effects tied to the first turn of a charge move? */
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
const chargeEffect = !!move.getAttrs(ChargeAttr).find(ca => ca.usedChargeEffect(user, this.getTarget() ?? null, move));
/**
* If the invoked move's effects are meant to trigger during the move's "charge turn,"
* ignore all effects after this point.
* Otherwise, apply all self-targeted POST_APPLY effects.
*/
Utils.executeIf(!chargeEffect, () => applyFilteredMoveAttrs((attr: MoveAttr) => attr instanceof MoveEffectAttr && attr.trigger === MoveEffectTrigger.POST_APPLY
&& attr.selfTarget && (!attr.firstHitOnly || firstHit) && (!attr.lastHitOnly || lastHit), user, target, move)).then(() => {
// All effects past this point require the move to have hit the target
2023-10-31 18:09:33 +00:00
if (hitResult !== HitResult.NO_EFFECT) {
// Apply all non-self-targeted POST_APPLY effects
applyFilteredMoveAttrs((attr: MoveAttr) => attr instanceof MoveEffectAttr && (attr as MoveEffectAttr).trigger === MoveEffectTrigger.POST_APPLY
&& !(attr as MoveEffectAttr).selfTarget && (!attr.firstHitOnly || firstHit) && (!attr.lastHitOnly || lastHit), user, target, this.move.getMove()).then(() => {
/**
* If the move hit, and the target doesn't have Shield Dust,
* apply the chance to flinch the target gained from King's Rock
*/
if (dealsDamage && !target.hasAbilityWithAttr(IgnoreMoveEffectsAbAttr)) {
2023-10-31 18:09:33 +00:00
const flinched = new Utils.BooleanHolder(false);
user.scene.applyModifiers(FlinchChanceModifier, user.isPlayer(), user, flinched);
if (flinched.value) {
2023-10-31 18:09:33 +00:00
target.addTag(BattlerTagType.FLINCHED, undefined, this.move.moveId, user.id);
}
2023-10-31 18:09:33 +00:00
}
// If the move was not protected against, apply all HIT effects
Utils.executeIf(!isProtected && !chargeEffect, () => applyFilteredMoveAttrs((attr: MoveAttr) => attr instanceof MoveEffectAttr && (attr as MoveEffectAttr).trigger === MoveEffectTrigger.HIT
&& (!attr.firstHitOnly || firstHit) && (!attr.lastHitOnly || lastHit) && (!attr.firstTargetOnly || firstTarget), user, target, this.move.getMove()).then(() => {
// Apply the target's post-defend ability effects (as long as the target is active or can otherwise apply them)
return Utils.executeIf(!target.isFainted() || target.canApplyAbility(), () => applyPostDefendAbAttrs(PostDefendAbAttr, target, user, this.move.getMove(), hitResult).then(() => {
// If the invoked move is an enemy attack, apply the enemy's status effect-inflicting tags and tokens
target.lapseTag(BattlerTagType.BEAK_BLAST_CHARGING);
[Move] Implement Shell Trap (#3500) * Implement Shell Trap * Fix error in EN message * Add ZH/KO translations Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Fix error in placeholder messages * FR translation / KO translation fix Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> * More translations (DE, ES, IT, PT-BR) Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ja/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Fix Shell Trap activating from ally attacks (+ test fixes) * Remove todo + add test with shell trap as first move --------- Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br>
2024-08-13 20:47:05 +00:00
if (move.category === MoveCategory.PHYSICAL && user.isPlayer() !== target.isPlayer()) {
target.lapseTag(BattlerTagType.SHELL_TRAP);
}
if (!user.isPlayer() && this.move.getMove() instanceof AttackMove) {
user.scene.applyShuffledModifiers(this.scene, EnemyAttackStatusEffectChanceModifier, false, target);
}
})).then(() => {
// Apply the user's post-attack ability effects
applyPostAttackAbAttrs(PostAttackAbAttr, user, target, this.move.getMove(), hitResult).then(() => {
/**
* If the invoked move is an attack, apply the user's chance to
* steal an item from the target granted by Grip Claw
*/
if (this.move.getMove() instanceof AttackMove) {
this.scene.applyModifiers(ContactHeldItemTransferChanceModifier, this.player, user, target);
}
resolve();
});
});
})
2023-10-31 18:09:33 +00:00
).then(() => resolve());
});
} else {
applyMoveAttrs(NoEffectAttr, user, null, move).then(() => resolve());
}
2023-10-31 18:09:33 +00:00
});
} else {
resolve();
}
2023-10-31 18:09:33 +00:00
});
}));
2023-04-23 14:24:22 +00:00
}
// Apply the move's POST_TARGET effects on the move's last hit, after all targeted effects have resolved
const postTarget = (user.turnData.hitsLeft === 1 || !this.getTarget()?.isActive()) ?
applyFilteredMoveAttrs((attr: MoveAttr) => attr instanceof MoveEffectAttr && attr.trigger === MoveEffectTrigger.POST_TARGET, user, null, move) :
null;
if (!!postTarget) {
if (applyAttrs.length) { // If there is a pending asynchronous move effect, do this after
applyAttrs[applyAttrs.length - 1]?.then(() => postTarget);
} else { // Otherwise, push a new asynchronous move effect
applyAttrs.push(postTarget);
}
}
// Wait for all move effects to finish applying, then end this phase
2023-10-31 18:09:33 +00:00
Promise.allSettled(applyAttrs).then(() => this.end());
2023-04-13 16:16:36 +00:00
});
2023-04-10 18:12:01 +00:00
});
}
2023-04-10 20:17:25 +00:00
end() {
const move = this.move.getMove();
move.type = move.defaultType;
2023-04-10 20:17:25 +00:00
const user = this.getUserPokemon();
/**
* If this phase isn't for the invoked move's last strike,
* unshift another MoveEffectPhase for the next strike.
* Otherwise, queue a message indicating the number of times the move has struck
* (if the move has struck more than once), then apply the heal from Shell Bell
* to the user.
*/
if (user) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
if (user.turnData.hitsLeft && --user.turnData.hitsLeft >= 1 && this.getTarget()?.isActive()) {
this.scene.unshiftPhase(this.getNewHitPhase());
} else {
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
// Queue message for number of hits made by multi-move
// If multi-hit attack only hits once, still want to render a message
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
const hitsTotal = user.turnData.hitCount! - Math.max(user.turnData.hitsLeft!, 0); // TODO: are those bangs correct?
if (hitsTotal > 1 || (user.turnData.hitsLeft && user.turnData.hitsLeft > 0)) {
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
// If there are multiple hits, or if there are hits of the multi-hit move left
this.scene.queueMessage(i18next.t("battle:attackHitsCount", { count: hitsTotal }));
}
this.scene.applyModifiers(HitHealModifier, this.player, user);
}
2023-04-13 16:16:36 +00:00
}
2024-05-23 23:45:04 +00:00
2023-04-10 20:17:25 +00:00
super.end();
}
/**
* Resolves whether this phase's invoked move hits or misses the given target
* @param target {@linkcode Pokemon} the Pokemon targeted by the invoked move
* @returns `true` if the move does not miss the target; `false` otherwise
*/
hitCheck(target: Pokemon): boolean {
// Moves targeting the user and entry hazards can't miss
if ([MoveTarget.USER, MoveTarget.ENEMY_SIDE].includes(this.move.getMove().moveTarget)) {
2023-04-18 16:30:47 +00:00
return true;
}
2023-04-13 16:16:36 +00:00
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
const user = this.getUserPokemon()!; // TODO: is this bang correct?
// Hit check only calculated on first hit for multi-hit moves unless flag is set to check all hits.
// However, if an ability with the MaxMultiHitAbAttr, namely Skill Link, is present, act as a normal
// multi-hit move and proceed with all hits
if (user.turnData.hitsLeft < user.turnData.hitCount) {
if (!this.move.getMove().hasFlag(MoveFlags.CHECK_ALL_HITS) || user.hasAbilityWithAttr(MaxMultiHitAbAttr)) {
return true;
}
}
2023-10-30 16:33:20 +00:00
if (user.hasAbilityWithAttr(AlwaysHitAbAttr) || target.hasAbilityWithAttr(AlwaysHitAbAttr)) {
2024-04-21 05:26:30 +00:00
return true;
}
2024-04-21 05:26:30 +00:00
// If the user should ignore accuracy on a target, check who the user targeted last turn and see if they match
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
if (user.getTag(BattlerTagType.IGNORE_ACCURACY) && (user.getLastXMoves().find(() => true)?.targets || []).indexOf(target.getBattlerIndex()) !== -1) {
return true;
}
if (target.getTag(BattlerTagType.ALWAYS_GET_HIT)) {
return true;
}
2024-05-23 23:45:04 +00:00
const semiInvulnerableTag = target.getTag(SemiInvulnerableTag);
if (semiInvulnerableTag && !this.move.getMove().getAttrs(HitsTagAttr).some(hta => hta.tagType === semiInvulnerableTag.tagType)) {
return false;
}
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
const moveAccuracy = this.move.getMove().calculateBattleAccuracy(user!, target); // TODO: is the bang correct here?
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
if (moveAccuracy === -1) {
return true;
}
2023-05-08 22:48:35 +00:00
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
const accuracyMultiplier = user.getAccuracyMultiplier(target, this.move.getMove());
const rand = user.randSeedInt(100, 1);
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
return rand <= moveAccuracy * (accuracyMultiplier!); // TODO: is this bang correct?
2023-04-10 20:17:25 +00:00
}
/** Returns the {@linkcode Pokemon} using this phase's invoked move */
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
getUserPokemon(): Pokemon | undefined {
if (this.battlerIndex > BattlerIndex.ENEMY_2) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
return this.scene.getPokemonById(this.battlerIndex) ?? undefined;
}
return (this.player ? this.scene.getPlayerField() : this.scene.getEnemyField())[this.fieldIndex];
2023-04-10 18:12:01 +00:00
}
/** Returns an array of all {@linkcode Pokemon} targeted by this phase's invoked move */
getTargets(): Pokemon[] {
return this.scene.getField(true).filter(p => this.targets.indexOf(p.getBattlerIndex()) > -1);
2023-04-10 18:12:01 +00:00
}
2023-04-10 20:17:25 +00:00
/** Returns the first target of this phase's invoked move */
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
getTarget(): Pokemon | undefined {
return this.getTargets()[0];
2023-04-10 18:12:01 +00:00
}
2023-04-10 20:17:25 +00:00
/**
* Removes the given {@linkcode Pokemon} from this phase's target list
* @param target {@linkcode Pokemon} the Pokemon to be removed
*/
removeTarget(target: Pokemon): void {
const targetIndex = this.targets.findIndex(ind => ind === target.getBattlerIndex());
if (targetIndex !== -1) {
this.targets.splice(this.targets.findIndex(ind => ind === target.getBattlerIndex()), 1);
}
}
/**
* Prevents subsequent strikes of this phase's invoked move from occurring
* @param target {@linkcode Pokemon} if defined, only stop subsequent
* strikes against this Pokemon
*/
stopMultiHit(target?: Pokemon): void {
/** If given a specific target, remove the target from subsequent strikes */
if (target) {
this.removeTarget(target);
}
/**
* If no target specified, or the specified target was the last of this move's
* targets, completely cancel all subsequent strikes.
*/
if (!target || this.targets.length === 0 ) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.getUserPokemon()!.turnData.hitCount = 1; // TODO: is the bang correct here?
this.getUserPokemon()!.turnData.hitsLeft = 1; // TODO: is the bang correct here?
}
}
/** Returns a new MoveEffectPhase with the same properties as this phase */
2023-04-10 20:17:25 +00:00
getNewHitPhase() {
return new MoveEffectPhase(this.scene, this.battlerIndex, this.targets, this.move);
2023-04-10 20:17:25 +00:00
}
2023-04-10 18:12:01 +00:00
}
2023-04-16 22:40:32 +00:00
export class MoveEndPhase extends PokemonPhase {
constructor(scene: BattleScene, battlerIndex: BattlerIndex) {
super(scene, battlerIndex);
2023-04-16 22:40:32 +00:00
}
start() {
super.start();
const pokemon = this.getPokemon();
if (pokemon.isActive(true)) {
pokemon.lapseTags(BattlerTagLapseType.AFTER_MOVE);
}
2023-04-16 22:40:32 +00:00
this.scene.arena.setIgnoreAbilities(false);
2023-04-16 22:40:32 +00:00
this.end();
}
}
2023-04-14 03:04:51 +00:00
export class MoveAnimTestPhase extends BattlePhase {
private moveQueue: Moves[];
constructor(scene: BattleScene, moveQueue?: Moves[]) {
super(scene);
2023-04-21 01:32:48 +00:00
this.moveQueue = moveQueue || Utils.getEnumValues(Moves).slice(1);
2023-04-14 03:04:51 +00:00
}
start() {
const moveQueue = this.moveQueue.slice(0);
this.playMoveAnim(moveQueue, true);
}
playMoveAnim(moveQueue: Moves[], player: boolean) {
const moveId = player ? moveQueue[0] : moveQueue.shift();
if (moveId === undefined) {
this.playMoveAnim(this.moveQueue.slice(0), true);
return;
} else if (player) {
2023-04-25 02:32:12 +00:00
console.log(Moves[moveId]);
}
2023-04-14 03:04:51 +00:00
initMoveAnim(this.scene, moveId).then(() => {
loadMoveAnimAssets(this.scene, [moveId], true)
2023-04-14 03:04:51 +00:00
.then(() => {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
new MoveAnim(moveId, player ? this.scene.getPlayerPokemon()! : this.scene.getEnemyPokemon()!, (player !== (allMoves[moveId] instanceof SelfStatusMove) ? this.scene.getEnemyPokemon()! : this.scene.getPlayerPokemon()!).getBattlerIndex()).play(this.scene, () => { // TODO: are the bangs correct here?
if (player) {
2023-04-14 03:04:51 +00:00
this.playMoveAnim(moveQueue, false);
} else {
2023-04-14 03:04:51 +00:00
this.playMoveAnim(moveQueue, true);
}
2023-04-14 03:04:51 +00:00
});
});
2023-04-14 03:04:51 +00:00
});
}
}
export class ShowAbilityPhase extends PokemonPhase {
private passive: boolean;
constructor(scene: BattleScene, battlerIndex: BattlerIndex, passive: boolean = false) {
super(scene, battlerIndex);
this.passive = passive;
}
start() {
super.start();
const pokemon = this.getPokemon();
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
if (pokemon) {
this.scene.abilityBar.showAbility(pokemon, this.passive);
if (pokemon?.battleData) {
pokemon.battleData.abilityRevealed = true;
}
2024-06-12 18:39:37 +00:00
}
this.end();
}
}
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
export type StatChangeCallback = (target: Pokemon | null, changed: BattleStat[], relativeChanges: number[]) => void;
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
2023-04-11 03:15:06 +00:00
export class StatChangePhase extends PokemonPhase {
private stats: BattleStat[];
2023-04-27 03:33:13 +00:00
private selfTarget: boolean;
2023-04-11 03:15:06 +00:00
private levels: integer;
private showMessage: boolean;
2024-04-11 16:11:55 +00:00
private ignoreAbilities: boolean;
private canBeCopied: boolean;
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
private onChange: StatChangeCallback | null;
2023-04-11 03:15:06 +00:00
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
constructor(scene: BattleScene, battlerIndex: BattlerIndex, selfTarget: boolean, stats: BattleStat[], levels: integer, showMessage: boolean = true, ignoreAbilities: boolean = false, canBeCopied: boolean = true, onChange: StatChangeCallback | null = null) {
super(scene, battlerIndex);
2023-04-11 03:15:06 +00:00
this.selfTarget = selfTarget;
this.stats = stats;
2023-04-11 03:15:06 +00:00
this.levels = levels;
this.showMessage = showMessage;
2024-04-11 16:11:55 +00:00
this.ignoreAbilities = ignoreAbilities;
this.canBeCopied = canBeCopied;
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
this.onChange = onChange;
2023-04-11 03:15:06 +00:00
}
start() {
const pokemon = this.getPokemon();
2023-04-27 03:33:13 +00:00
let random = false;
if (this.stats.length === 1 && this.stats[0] === BattleStat.RAND) {
this.stats[0] = this.getRandomStat();
random = true;
}
this.aggregateStatChanges(random);
if (!pokemon.isActive(true)) {
return this.end();
}
const filteredStats = this.stats.map(s => s !== BattleStat.RAND ? s : this.getRandomStat()).filter(stat => {
2023-04-27 03:33:13 +00:00
const cancelled = new Utils.BooleanHolder(false);
if (!this.selfTarget && this.levels < 0) {
this.scene.arena.applyTagsForSide(MistTag, pokemon.isPlayer() ? ArenaTagSide.PLAYER : ArenaTagSide.ENEMY, cancelled);
}
if (!cancelled.value && !this.selfTarget && this.levels < 0) {
2023-05-06 16:13:35 +00:00
applyPreStatChangeAbAttrs(ProtectStatAbAttr, this.getPokemon(), stat, cancelled);
}
2024-05-23 23:45:04 +00:00
2023-04-27 03:33:13 +00:00
return !cancelled.value;
});
2023-11-06 03:11:38 +00:00
const levels = new Utils.IntegerHolder(this.levels);
2024-04-11 16:11:55 +00:00
if (!this.ignoreAbilities) {
2024-04-11 16:11:55 +00:00
applyAbAttrs(StatChangeMultiplierAbAttr, pokemon, null, levels);
}
2023-11-06 03:11:38 +00:00
2023-04-11 03:15:06 +00:00
const battleStats = this.getPokemon().summonData.battleStats;
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
const relLevels = filteredStats.map(stat => (levels.value >= 1 ? Math.min(battleStats![stat] + levels.value, 6) : Math.max(battleStats![stat] + levels.value, -6)) - battleStats![stat]);
2023-04-11 03:15:06 +00:00
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.onChange && this.onChange(this.getPokemon(), filteredStats, relLevels);
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
2023-04-11 03:15:06 +00:00
const end = () => {
if (this.showMessage) {
const messages = this.getStatChangeMessages(filteredStats, levels.value, relLevels);
for (const message of messages) {
this.scene.queueMessage(message);
}
}
2023-04-11 03:15:06 +00:00
for (const stat of filteredStats) {
2023-11-06 03:11:38 +00:00
pokemon.summonData.battleStats[stat] = Math.max(Math.min(pokemon.summonData.battleStats[stat] + levels.value, 6), -6);
}
2024-05-23 23:45:04 +00:00
if (levels.value > 0 && this.canBeCopied) {
for (const opponent of pokemon.getOpponents()) {
applyAbAttrs(StatChangeCopyAbAttr, opponent, null, this.stats, levels.value);
}
}
2024-05-23 23:45:04 +00:00
2024-05-01 03:02:16 +00:00
applyPostStatChangeAbAttrs(PostStatChangeAbAttr, pokemon, filteredStats, this.levels, this.selfTarget);
2024-05-23 23:45:04 +00:00
// Look for any other stat change phases; if this is the last one, do White Herb check
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
const existingPhase = this.scene.findPhase(p => p instanceof StatChangePhase && p.battlerIndex === this.battlerIndex);
if (!(existingPhase instanceof StatChangePhase)) {
// Apply White Herb if needed
const whiteHerb = this.scene.applyModifier(PokemonResetNegativeStatStageModifier, this.player, pokemon) as PokemonResetNegativeStatStageModifier;
// If the White Herb was applied, consume it
if (whiteHerb) {
--whiteHerb.stackCount;
if (whiteHerb.stackCount <= 0) {
this.scene.removeModifier(whiteHerb);
}
this.scene.updateModifiers(this.player);
}
}
2024-05-01 03:02:16 +00:00
pokemon.updateInfo();
handleTutorial(this.scene, Tutorial.Stat_Change).then(() => super.end());
2023-04-11 03:15:06 +00:00
};
if (relLevels.filter(l => l).length && this.scene.moveAnimations) {
2023-04-11 03:15:06 +00:00
pokemon.enableMask();
const pokemonMaskSprite = pokemon.maskSprite;
const tileX = (this.player ? 106 : 236) * pokemon.getSpriteScale() * this.scene.field.scale;
const tileY = ((this.player ? 148 : 84) + (levels.value >= 1 ? 160 : 0)) * pokemon.getSpriteScale() * this.scene.field.scale;
const tileWidth = 156 * this.scene.field.scale * pokemon.getSpriteScale();
const tileHeight = 316 * this.scene.field.scale * pokemon.getSpriteScale();
// On increase, show the red sprite located at ATK
// On decrease, show the blue sprite located at SPD
const spriteColor = levels.value >= 1 ? BattleStat[BattleStat.ATK].toLowerCase() : BattleStat[BattleStat.SPD].toLowerCase();
const statSprite = this.scene.add.tileSprite(tileX, tileY, tileWidth, tileHeight, "battle_stats", spriteColor);
2023-12-30 02:04:40 +00:00
statSprite.setPipeline(this.scene.fieldSpritePipeline);
2023-04-11 03:15:06 +00:00
statSprite.setAlpha(0);
statSprite.setScale(6);
statSprite.setOrigin(0.5, 1);
this.scene.playSound(`stat_${levels.value >= 1 ? "up" : "down"}`);
2023-04-11 03:15:06 +00:00
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
statSprite.setMask(new Phaser.Display.Masks.BitmapMask(this.scene, pokemonMaskSprite ?? undefined));
2023-04-11 03:15:06 +00:00
this.scene.tweens.add({
targets: statSprite,
duration: 250,
alpha: 0.8375,
onComplete: () => {
this.scene.tweens.add({
targets: statSprite,
delay: 1000,
duration: 250,
alpha: 0
});
}
});
2023-04-11 13:41:11 +00:00
2023-04-11 03:15:06 +00:00
this.scene.tweens.add({
targets: statSprite,
duration: 1500,
y: `${levels.value >= 1 ? "-" : "+"}=${160 * 6}`
2023-04-11 03:15:06 +00:00
});
2024-05-23 23:45:04 +00:00
2023-04-11 03:15:06 +00:00
this.scene.time.delayedCall(1750, () => {
pokemon.disableMask();
end();
});
} else {
2023-04-11 03:15:06 +00:00
end();
}
2023-04-11 03:15:06 +00:00
}
getRandomStat(): BattleStat {
const allStats = Utils.getEnumValues(BattleStat);
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
return this.getPokemon() ? allStats[this.getPokemon()!.randSeedInt(BattleStat.SPD + 1)] : BattleStat.ATK; // TODO: return default ATK on random? idk...
}
aggregateStatChanges(random: boolean = false): void {
const isAccEva = [BattleStat.ACC, BattleStat.EVA].some(s => this.stats.includes(s));
let existingPhase: StatChangePhase;
if (this.stats.length === 1) {
while ((existingPhase = (this.scene.findPhase(p => p instanceof StatChangePhase && p.battlerIndex === this.battlerIndex && p.stats.length === 1
&& (p.stats[0] === this.stats[0] || (random && p.stats[0] === BattleStat.RAND))
&& p.selfTarget === this.selfTarget && p.showMessage === this.showMessage && p.ignoreAbilities === this.ignoreAbilities) as StatChangePhase))) {
if (existingPhase.stats[0] === BattleStat.RAND) {
existingPhase.stats[0] = this.getRandomStat();
if (existingPhase.stats[0] !== this.stats[0]) {
continue;
}
}
this.levels += existingPhase.levels;
if (!this.scene.tryRemovePhase(p => p === existingPhase)) {
break;
}
}
}
while ((existingPhase = (this.scene.findPhase(p => p instanceof StatChangePhase && p.battlerIndex === this.battlerIndex && p.selfTarget === this.selfTarget
&& ([BattleStat.ACC, BattleStat.EVA].some(s => p.stats.includes(s)) === isAccEva)
&& p.levels === this.levels && p.showMessage === this.showMessage && p.ignoreAbilities === this.ignoreAbilities) as StatChangePhase))) {
this.stats.push(...existingPhase.stats);
if (!this.scene.tryRemovePhase(p => p === existingPhase)) {
break;
}
}
}
2023-11-06 03:11:38 +00:00
getStatChangeMessages(stats: BattleStat[], levels: integer, relLevels: integer[]): string[] {
2023-04-11 03:15:06 +00:00
const messages: string[] = [];
const relLevelStatIndexes = {};
for (let rl = 0; rl < relLevels.length; rl++) {
const relLevel = relLevels[rl];
if (!relLevelStatIndexes[relLevel]) {
relLevelStatIndexes[relLevel] = [];
}
relLevelStatIndexes[relLevel].push(rl);
}
Object.keys(relLevelStatIndexes).forEach(rl => {
const relLevelStats = stats.filter((_, i) => relLevelStatIndexes[rl].includes(i));
let statsFragment = "";
if (relLevelStats.length > 1) {
statsFragment = relLevelStats.length >= 5
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
? i18next.t("battle:stats")
: `${relLevelStats.slice(0, -1).map(s => getBattleStatName(s)).join(", ")}${relLevelStats.length > 2 ? "," : ""} ${i18next.t("battle:statsAnd")} ${getBattleStatName(relLevelStats[relLevelStats.length - 1])}`;
messages.push(getBattleStatLevelChangeDescription(getPokemonNameWithAffix(this.getPokemon()), statsFragment, Math.abs(parseInt(rl)), levels >= 1,relLevelStats.length));
} else {
statsFragment = getBattleStatName(relLevelStats[0]);
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
messages.push(getBattleStatLevelChangeDescription(getPokemonNameWithAffix(this.getPokemon()), statsFragment, Math.abs(parseInt(rl)), levels >= 1,relLevelStats.length));
}
});
2023-04-11 03:15:06 +00:00
return messages;
}
}
export class WeatherEffectPhase extends CommonAnimPhase {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
public weather: Weather | null;
constructor(scene: BattleScene) {
super(scene, undefined, undefined, CommonAnim.SUNNY + ((scene?.arena?.weather?.weatherType || WeatherType.NONE) - 1));
this.weather = scene?.arena?.weather;
}
start() {
// Update weather state with any changes that occurred during the turn
this.weather = this.scene?.arena?.weather;
if (!this.weather) {
this.end();
return;
}
this.setAnimation(CommonAnim.SUNNY + (this.weather.weatherType - 1));
if (this.weather.isDamaging()) {
2024-05-23 23:45:04 +00:00
const cancelled = new Utils.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);
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
applyPreWeatherEffectAbAttrs(PreWeatherDamageAbAttr, pokemon, this.weather , cancelled);
2024-04-02 19:14:07 +00:00
applyAbAttrs(BlockNonDirectDamageAbAttr, pokemon, cancelled);
if (cancelled.value) {
return;
}
const damage = Math.ceil(pokemon.getMaxHp() / 16);
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.queueMessage(getWeatherDamageMessage(this.weather?.weatherType!, pokemon)!); // TODO: are those bangs correct?
pokemon.damageAndUpdate(damage, HitResult.EFFECTIVE, false, false, true);
};
this.executeForAll((pokemon: Pokemon) => {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
const immune = !pokemon || !!pokemon.getTypes(true, true).filter(t => this.weather?.isTypeDamageImmune(t)).length;
if (!immune) {
inflictDamage(pokemon);
}
});
}
}
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.ui.showText(getWeatherLapseMessage(this.weather.weatherType)!, null, () => { // TODO: is this bang correct?
this.executeForAll((pokemon: Pokemon) => applyPostWeatherLapseAbAttrs(PostWeatherLapseAbAttr, pokemon, this.weather));
super.start();
});
}
}
2023-04-10 18:12:01 +00:00
export class ObtainStatusEffectPhase extends PokemonPhase {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
private statusEffect: StatusEffect | undefined;
private cureTurn: integer | null;
private sourceText: string | null;
private sourcePokemon: Pokemon | null;
2023-04-10 18:12:01 +00:00
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
constructor(scene: BattleScene, battlerIndex: BattlerIndex, statusEffect?: StatusEffect, cureTurn?: integer | null, sourceText?: string, sourcePokemon?: Pokemon) {
super(scene, battlerIndex);
2023-04-11 23:08:03 +00:00
this.statusEffect = statusEffect;
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.cureTurn = cureTurn!; // TODO: is this bang correct?
this.sourceText = sourceText!; // TODO: is this bang correct?
this.sourcePokemon = sourcePokemon!; // For tracking which Pokemon caused the status effect // TODO: is this bang correct?
2023-04-10 18:12:01 +00:00
}
start() {
const pokemon = this.getPokemon();
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
if (!pokemon?.status) {
if (pokemon?.trySetStatus(this.statusEffect, false, this.sourcePokemon)) {
if (this.cureTurn) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
pokemon.status!.cureTurn = this.cureTurn; // TODO: is this bang correct?
}
2023-04-11 23:08:03 +00:00
pokemon.updateInfo(true);
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
new CommonBattleAnim(CommonAnim.POISON + (this.statusEffect! - 1), pokemon).play(this.scene, () => {
this.scene.queueMessage(getStatusEffectObtainText(this.statusEffect, getPokemonNameWithAffix(pokemon), this.sourceText ?? undefined));
if (pokemon.status?.isPostTurn()) {
this.scene.pushPhase(new PostTurnStatusEffectPhase(this.scene, this.battlerIndex));
}
2023-04-11 23:08:03 +00:00
this.end();
});
return;
}
} else if (pokemon.status.effect === this.statusEffect) {
[Localization] localized status-effect.ts and translate. (#2528) * make postposition not to dynamic for localize * localize status-effect.ts * added test code, modified english postposition, modifed toxic_orb test to make it always fix in English. * Update src/locales/zh_CN/status-effect.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/status-effect.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/status-effect.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/status-effect.ts * added test code for check message key * remove multi-language tests (except english) * Update src/locales/pt_BR/status-effect.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * remove language and change test code to check method call and parameter * Update src/locales/es/status-effect.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/en/status-effect.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Apply review suggestion * Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * add Test with empty string parameter * Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update src/locales/fr/status-effect.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com>
2024-07-02 14:22:46 +00:00
this.scene.queueMessage(getStatusEffectOverlapText(this.statusEffect, getPokemonNameWithAffix(pokemon)));
}
2023-04-11 23:08:03 +00:00
this.end();
}
}
export class PostTurnStatusEffectPhase extends PokemonPhase {
constructor(scene: BattleScene, battlerIndex: BattlerIndex) {
super(scene, battlerIndex);
2023-04-11 23:08:03 +00:00
}
start() {
const pokemon = this.getPokemon();
if (pokemon?.isActive(true) && pokemon.status && pokemon.status.isPostTurn()) {
2023-04-11 23:08:03 +00:00
pokemon.status.incrementTurn();
2024-04-02 19:14:07 +00:00
const cancelled = new Utils.BooleanHolder(false);
applyAbAttrs(BlockNonDirectDamageAbAttr, pokemon, cancelled);
applyAbAttrs(BlockStatusDamageAbAttr, pokemon, cancelled);
2024-04-02 19:14:07 +00:00
if (!cancelled.value) {
[Localization] localized status-effect.ts and translate. (#2528) * make postposition not to dynamic for localize * localize status-effect.ts * added test code, modified english postposition, modifed toxic_orb test to make it always fix in English. * Update src/locales/zh_CN/status-effect.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/status-effect.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/status-effect.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/status-effect.ts * added test code for check message key * remove multi-language tests (except english) * Update src/locales/pt_BR/status-effect.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * remove language and change test code to check method call and parameter * Update src/locales/es/status-effect.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/en/status-effect.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Apply review suggestion * Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * add Test with empty string parameter * Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update src/locales/fr/status-effect.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com>
2024-07-02 14:22:46 +00:00
this.scene.queueMessage(getStatusEffectActivationText(pokemon.status.effect, getPokemonNameWithAffix(pokemon)));
const damage = new Utils.NumberHolder(0);
2024-04-02 19:14:07 +00:00
switch (pokemon.status.effect) {
case StatusEffect.POISON:
damage.value = Math.max(pokemon.getMaxHp() >> 3, 1);
break;
case StatusEffect.TOXIC:
damage.value = Math.max(Math.floor((pokemon.getMaxHp() / 16) * pokemon.status.turnCount), 1);
break;
case StatusEffect.BURN:
damage.value = Math.max(pokemon.getMaxHp() >> 4, 1);
applyAbAttrs(ReduceBurnDamageAbAttr, pokemon, null, damage);
break;
2024-04-02 19:14:07 +00:00
}
if (damage.value) {
// Set preventEndure flag to avoid pokemon surviving thanks to focus band, sturdy, endure ...
this.scene.damageNumberHandler.add(this.getPokemon(), pokemon.damage(damage.value, false, true));
2024-04-02 19:14:07 +00:00
pokemon.updateInfo();
}
new CommonBattleAnim(CommonAnim.POISON + (pokemon.status.effect - 1), pokemon).play(this.scene, () => this.end());
} else {
2024-04-02 19:14:07 +00:00
this.end();
}
} else {
2023-04-10 18:12:01 +00:00
this.end();
}
2023-04-10 18:12:01 +00:00
}
override end() {
if (this.scene.currentBattle.battleSpec === BattleSpec.FINAL_BOSS) {
this.scene.initFinalBossPhaseTwo(this.getPokemon());
} else {
super.end();
}
}
2023-04-10 18:12:01 +00:00
}
export class MessagePhase extends Phase {
2023-04-10 18:12:01 +00:00
private text: string;
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
private callbackDelay: integer | null;
private prompt: boolean | null;
private promptDelay: integer | null;
2023-04-10 18:12:01 +00:00
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
constructor(scene: BattleScene, text: string, callbackDelay?: integer | null, prompt?: boolean | null, promptDelay?: integer | null) {
2023-04-10 18:12:01 +00:00
super(scene);
this.text = text;
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.callbackDelay = callbackDelay!; // TODO: is this bang correct?
this.prompt = prompt!; // TODO: is this bang correct?
this.promptDelay = promptDelay!; // TODO: is this bang correct?
2023-04-10 18:12:01 +00:00
}
start() {
super.start();
if (this.text.indexOf("$") > -1) {
const pageIndex = this.text.indexOf("$");
this.scene.unshiftPhase(new MessagePhase(this.scene, this.text.slice(pageIndex + 1), this.callbackDelay, this.prompt, this.promptDelay));
this.text = this.text.slice(0, pageIndex).trim();
}
2023-05-07 21:05:19 +00:00
this.scene.ui.showText(this.text, null, () => this.end(), this.callbackDelay || (this.prompt ? 0 : 1500), this.prompt, this.promptDelay);
2023-04-10 18:12:01 +00:00
}
2023-04-27 05:14:15 +00:00
end() {
if (this.scene.abilityBar.shown) {
2023-04-27 05:14:15 +00:00
this.scene.abilityBar.hide();
}
2023-04-27 05:14:15 +00:00
super.end();
}
2023-04-10 18:12:01 +00:00
}
2023-04-15 05:32:16 +00:00
export class DamagePhase extends PokemonPhase {
private amount: integer;
2023-04-15 05:32:16 +00:00
private damageResult: DamageResult;
private critical: boolean;
2023-04-15 05:32:16 +00:00
constructor(scene: BattleScene, battlerIndex: BattlerIndex, amount: integer, damageResult?: DamageResult, critical: boolean = false) {
super(scene, battlerIndex);
2023-04-15 05:32:16 +00:00
this.amount = amount;
this.damageResult = damageResult || HitResult.EFFECTIVE;
this.critical = critical;
2023-04-15 05:32:16 +00:00
}
start() {
super.start();
2023-11-08 03:23:42 +00:00
if (this.damageResult === HitResult.ONE_HIT_KO) {
if (this.scene.moveAnimations) {
this.scene.toggleInvert(true);
}
2023-11-08 03:23:42 +00:00
this.scene.time.delayedCall(Utils.fixedInt(1000), () => {
this.scene.toggleInvert(false);
this.applyDamage();
});
return;
}
this.applyDamage();
}
updateAmount(amount: integer): void {
this.amount = amount;
}
2023-11-08 03:23:42 +00:00
applyDamage() {
2023-04-15 05:32:16 +00:00
switch (this.damageResult) {
case HitResult.EFFECTIVE:
this.scene.playSound("hit");
break;
case HitResult.SUPER_EFFECTIVE:
case HitResult.ONE_HIT_KO:
this.scene.playSound("hit_strong");
break;
case HitResult.NOT_VERY_EFFECTIVE:
this.scene.playSound("hit_weak");
break;
2023-04-15 05:32:16 +00:00
}
if (this.amount) {
this.scene.damageNumberHandler.add(this.getPokemon(), this.amount, this.damageResult, this.critical);
}
if (this.damageResult !== HitResult.OTHER) {
2023-04-18 16:30:47 +00:00
const flashTimer = this.scene.time.addEvent({
delay: 100,
repeat: 5,
startAt: 200,
callback: () => {
this.getPokemon().getSprite().setVisible(flashTimer.repeatCount % 2 === 0);
if (!flashTimer.repeatCount) {
2023-04-18 16:30:47 +00:00
this.getPokemon().updateInfo().then(() => this.end());
}
2023-04-18 16:30:47 +00:00
}
});
} else {
2023-04-18 16:30:47 +00:00
this.getPokemon().updateInfo().then(() => this.end());
}
2023-04-15 05:32:16 +00:00
}
override end() {
if (this.scene.currentBattle.battleSpec === BattleSpec.FINAL_BOSS) {
this.scene.initFinalBossPhaseTwo(this.getPokemon());
} else {
super.end();
}
}
2023-04-15 05:32:16 +00:00
}
2023-04-10 18:12:01 +00:00
export class FaintPhase extends PokemonPhase {
private preventEndure: boolean;
constructor(scene: BattleScene, battlerIndex: BattlerIndex, preventEndure?: boolean) {
super(scene, battlerIndex);
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.preventEndure = preventEndure!; // TODO: is this bang correct?
2023-04-10 18:12:01 +00:00
}
start() {
super.start();
if (!this.preventEndure) {
const instantReviveModifier = this.scene.applyModifier(PokemonInstantReviveModifier, this.player, this.getPokemon()) as PokemonInstantReviveModifier;
2023-06-06 12:16:07 +00:00
if (instantReviveModifier) {
if (!--instantReviveModifier.stackCount) {
this.scene.removeModifier(instantReviveModifier);
}
this.scene.updateModifiers(this.player);
return this.end();
}
2023-06-06 12:16:07 +00:00
}
if (!this.tryOverrideForBattleSpec()) {
this.doFaint();
}
}
doFaint(): void {
const pokemon = this.getPokemon();
// Track total times pokemon have been KO'd for supreme overlord/last respects
if (pokemon.isPlayer()) {
this.scene.currentBattle.playerFaints += 1;
} else {
this.scene.currentBattle.enemyFaints += 1;
}
this.scene.queueMessage(i18next.t("battle:fainted", { pokemonNameWithAffix: getPokemonNameWithAffix(pokemon) }), null, true);
2023-04-15 05:32:16 +00:00
if (pokemon.turnData?.attacksReceived?.length) {
const lastAttack = pokemon.turnData.attacksReceived[0];
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
applyPostFaintAbAttrs(PostFaintAbAttr, pokemon, this.scene.getPokemonById(lastAttack.sourceId)!, new PokemonMove(lastAttack.move).getMove(), lastAttack.result); // TODO: is this bang correct?
}
const alivePlayField = this.scene.getField(true);
alivePlayField.forEach(p => applyPostKnockOutAbAttrs(PostKnockOutAbAttr, p, pokemon));
if (pokemon.turnData?.attacksReceived?.length) {
const defeatSource = this.scene.getPokemonById(pokemon.turnData.attacksReceived[0].sourceId);
if (defeatSource?.isOnField()) {
applyPostVictoryAbAttrs(PostVictoryAbAttr, defeatSource);
const pvmove = allMoves[pokemon.turnData.attacksReceived[0].move];
const pvattrs = pvmove.getAttrs(PostVictoryStatChangeAttr);
if (pvattrs.length) {
for (const pvattr of pvattrs) {
pvattr.applyPostVictory(defeatSource, defeatSource, pvmove);
}
}
}
}
if (this.player) {
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
const nonFaintedLegalPartyMembers = this.scene.getParty().filter(p => p.isAllowedInBattle());
const nonFaintedPartyMemberCount = nonFaintedLegalPartyMembers.length;
if (!nonFaintedPartyMemberCount) {
this.scene.unshiftPhase(new GameOverPhase(this.scene));
} else if (nonFaintedPartyMemberCount === 1 && this.scene.currentBattle.double) {
this.scene.unshiftPhase(new ToggleDoublePositionPhase(this.scene, true));
} else if (nonFaintedPartyMemberCount >= this.scene.currentBattle.getBattlerCount()) {
this.scene.pushPhase(new SwitchPhase(this.scene, this.fieldIndex, true, false));
}
2023-10-07 20:08:33 +00:00
} else {
2023-05-29 16:24:38 +00:00
this.scene.unshiftPhase(new VictoryPhase(this.scene, this.battlerIndex));
2023-10-07 20:08:33 +00:00
if (this.scene.currentBattle.battleType === BattleType.TRAINER) {
const hasReservePartyMember = !!this.scene.getEnemyParty().filter(p => p.isActive() && !p.isOnField() && p.trainerSlot === (pokemon as EnemyPokemon).trainerSlot).length;
if (hasReservePartyMember) {
this.scene.pushPhase(new SwitchSummonPhase(this.scene, this.fieldIndex, -1, false, false, false));
}
2023-10-07 20:08:33 +00:00
}
}
2023-04-14 03:04:51 +00:00
// in double battles redirect potential moves off fainted pokemon
2024-03-28 04:24:24 +00:00
if (this.scene.currentBattle.double) {
const allyPokemon = pokemon.getAlly();
this.scene.redirectPokemonMoves(pokemon, allyPokemon);
2024-03-28 04:24:24 +00:00
}
2023-04-21 23:30:04 +00:00
pokemon.lapseTags(BattlerTagLapseType.FAINT);
this.scene.getField(true).filter(p => p !== pokemon).forEach(p => p.removeTagsBySourceId(pokemon.id));
2023-04-13 16:16:36 +00:00
2023-04-10 18:12:01 +00:00
pokemon.faintCry(() => {
if (pokemon instanceof PlayerPokemon) {
pokemon.addFriendship(-10);
}
2023-04-10 18:12:01 +00:00
pokemon.hideInfo();
this.scene.playSound("faint");
2023-04-10 18:12:01 +00:00
this.scene.tweens.add({
targets: pokemon,
duration: 500,
y: pokemon.y + 150,
ease: "Sine.easeIn",
2023-04-10 18:12:01 +00:00
onComplete: () => {
pokemon.setVisible(false);
pokemon.y -= 150;
2023-04-16 22:40:32 +00:00
pokemon.trySetStatus(StatusEffect.FAINT);
if (pokemon.isPlayer()) {
2023-04-10 18:12:01 +00:00
this.scene.currentBattle.removeFaintedParticipant(pokemon as PlayerPokemon);
} else {
2024-03-17 15:36:19 +00:00
this.scene.addFaintedEnemyScore(pokemon as EnemyPokemon);
2024-03-07 02:05:23 +00:00
this.scene.currentBattle.addPostBattleLoot(pokemon as EnemyPokemon);
2024-03-17 15:36:19 +00:00
}
2023-04-10 18:12:01 +00:00
this.scene.field.remove(pokemon);
this.end();
}
});
});
}
tryOverrideForBattleSpec(): boolean {
switch (this.scene.currentBattle.battleSpec) {
case BattleSpec.FINAL_BOSS:
if (!this.player) {
const enemy = this.getPokemon();
if (enemy.formIndex) {
this.scene.ui.showDialogue(battleSpecDialogue[BattleSpec.FINAL_BOSS].secondStageWin, enemy.species.name, null, () => this.doFaint());
} else {
// Final boss' HP threshold has been bypassed; cancel faint and force check for 2nd phase
enemy.hp++;
this.scene.unshiftPhase(new DamagePhase(this.scene, enemy.getBattlerIndex(), 0, HitResult.OTHER));
this.end();
}
return true;
}
}
return false;
}
2023-04-10 18:12:01 +00:00
}
export class VictoryPhase extends PokemonPhase {
2023-05-29 16:24:38 +00:00
constructor(scene: BattleScene, battlerIndex: BattlerIndex) {
super(scene, battlerIndex);
2023-04-10 18:12:01 +00:00
}
start() {
super.start();
this.scene.gameData.gameStats.pokemonDefeated++;
2023-04-10 18:12:01 +00:00
const participantIds = this.scene.currentBattle.playerParticipantIds;
const party = this.scene.getParty();
const expShareModifier = this.scene.findModifier(m => m instanceof ExpShareModifier) as ExpShareModifier;
2023-04-20 02:51:46 +00:00
const expBalanceModifier = this.scene.findModifier(m => m instanceof ExpBalanceModifier) as ExpBalanceModifier;
const multipleParticipantExpBonusModifier = this.scene.findModifier(m => m instanceof MultipleParticipantExpBonusModifier) as MultipleParticipantExpBonusModifier;
const nonFaintedPartyMembers = party.filter(p => p.hp);
const expPartyMembers = nonFaintedPartyMembers.filter(p => p.level < this.scene.getMaxExpLevel());
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
const partyMemberExp: number[] = [];
2023-11-24 21:27:26 +00:00
if (participantIds.size) {
let expValue = this.getPokemon().getExpValue();
if (this.scene.currentBattle.battleType === BattleType.TRAINER) {
2023-11-24 21:27:26 +00:00
expValue = Math.floor(expValue * 1.5);
}
for (const partyMember of nonFaintedPartyMembers) {
2023-11-24 21:27:26 +00:00
const pId = partyMember.id;
const participated = participantIds.has(pId);
if (participated) {
partyMember.addFriendship(2);
}
if (!expPartyMembers.includes(partyMember)) {
continue;
}
if (!participated && !expShareModifier) {
2023-11-24 21:27:26 +00:00
partyMemberExp.push(0);
continue;
}
let expMultiplier = 0;
if (participated) {
expMultiplier += (1 / participantIds.size);
if (participantIds.size > 1 && multipleParticipantExpBonusModifier) {
2023-11-24 21:27:26 +00:00
expMultiplier += multipleParticipantExpBonusModifier.getStackCount() * 0.2;
}
} else if (expShareModifier) {
2023-11-24 21:27:26 +00:00
expMultiplier += (expShareModifier.getStackCount() * 0.2) / participantIds.size;
}
if (partyMember.pokerus) {
2023-11-24 21:27:26 +00:00
expMultiplier *= 1.5;
}
if (Overrides.XP_MULTIPLIER_OVERRIDE !== null) {
expMultiplier = Overrides.XP_MULTIPLIER_OVERRIDE;
}
2023-11-24 21:27:26 +00:00
const pokemonExp = new Utils.NumberHolder(expValue * expMultiplier);
this.scene.applyModifiers(PokemonExpBoosterModifier, true, partyMember, pokemonExp);
2023-11-24 21:27:26 +00:00
partyMemberExp.push(Math.floor(pokemonExp.value));
2023-04-20 02:51:46 +00:00
}
2023-11-24 21:27:26 +00:00
if (expBalanceModifier) {
let totalLevel = 0;
let totalExp = 0;
expPartyMembers.forEach((expPartyMember, epm) => {
totalExp += partyMemberExp[epm];
totalLevel += expPartyMember.level;
});
2023-04-20 02:51:46 +00:00
2023-11-24 21:27:26 +00:00
const medianLevel = Math.floor(totalLevel / expPartyMembers.length);
2023-04-20 02:51:46 +00:00
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
const recipientExpPartyMemberIndexes: number[] = [];
2023-11-24 21:27:26 +00:00
expPartyMembers.forEach((expPartyMember, epm) => {
if (expPartyMember.level <= medianLevel) {
2023-11-24 21:27:26 +00:00
recipientExpPartyMemberIndexes.push(epm);
}
2023-11-24 21:27:26 +00:00
});
2023-04-20 02:51:46 +00:00
2023-11-24 21:27:26 +00:00
const splitExp = Math.floor(totalExp / recipientExpPartyMemberIndexes.length);
2023-04-20 02:51:46 +00:00
2023-11-24 21:27:26 +00:00
expPartyMembers.forEach((_partyMember, pm) => {
partyMemberExp[pm] = Phaser.Math.Linear(partyMemberExp[pm], recipientExpPartyMemberIndexes.indexOf(pm) > -1 ? splitExp : 0, 0.2 * expBalanceModifier.getStackCount());
2023-11-24 21:27:26 +00:00
});
}
2023-04-20 02:51:46 +00:00
2023-11-24 21:27:26 +00:00
for (let pm = 0; pm < expPartyMembers.length; pm++) {
const exp = partyMemberExp[pm];
2023-04-20 02:51:46 +00:00
2023-11-24 21:27:26 +00:00
if (exp) {
const partyMemberIndex = party.indexOf(expPartyMembers[pm]);
this.scene.unshiftPhase(expPartyMembers[pm].isOnField() ? new ExpPhase(this.scene, partyMemberIndex, exp) : new ShowPartyExpBarPhase(this.scene, partyMemberIndex, exp));
}
2023-04-10 18:12:01 +00:00
}
}
2024-05-23 23:45:04 +00:00
if (!this.scene.getEnemyParty().find(p => this.scene.currentBattle.battleType ? !p?.isFainted(true) : p.isOnField())) {
this.scene.pushPhase(new BattleEndPhase(this.scene));
if (this.scene.currentBattle.battleType === BattleType.TRAINER) {
this.scene.pushPhase(new TrainerVictoryPhase(this.scene));
}
2024-03-14 20:26:57 +00:00
if (this.scene.gameMode.isEndless || !this.scene.gameMode.isWaveFinal(this.scene.currentBattle.waveIndex)) {
this.scene.pushPhase(new EggLapsePhase(this.scene));
if (this.scene.currentBattle.waveIndex % 10) {
this.scene.pushPhase(new SelectModifierPhase(this.scene));
} else if (this.scene.gameMode.isDaily) {
2024-03-17 02:06:56 +00:00
this.scene.pushPhase(new ModifierRewardPhase(this.scene, modifierTypes.EXP_CHARM));
if (this.scene.currentBattle.waveIndex > 10 && !this.scene.gameMode.isWaveFinal(this.scene.currentBattle.waveIndex)) {
2024-03-17 02:06:56 +00:00
this.scene.pushPhase(new ModifierRewardPhase(this.scene, modifierTypes.GOLDEN_POKEBALL));
}
2024-03-17 02:06:56 +00:00
} else {
const superExpWave = !this.scene.gameMode.isEndless ? (this.scene.offsetGym ? 0 : 20) : 10;
if (this.scene.gameMode.isEndless && this.scene.currentBattle.waveIndex === 10) {
2024-03-24 15:17:12 +00:00
this.scene.pushPhase(new ModifierRewardPhase(this.scene, modifierTypes.EXP_SHARE));
}
if (this.scene.currentBattle.waveIndex <= 750 && (this.scene.currentBattle.waveIndex <= 500 || (this.scene.currentBattle.waveIndex % 30) === superExpWave)) {
this.scene.pushPhase(new ModifierRewardPhase(this.scene, (this.scene.currentBattle.waveIndex % 30) !== superExpWave || this.scene.currentBattle.waveIndex > 250 ? modifierTypes.EXP_CHARM : modifierTypes.SUPER_EXP_CHARM));
}
if (this.scene.currentBattle.waveIndex <= 150 && !(this.scene.currentBattle.waveIndex % 50)) {
this.scene.pushPhase(new ModifierRewardPhase(this.scene, modifierTypes.GOLDEN_POKEBALL));
}
2024-03-14 20:26:57 +00:00
if (this.scene.gameMode.isEndless && !(this.scene.currentBattle.waveIndex % 50)) {
2024-01-01 04:19:06 +00:00
this.scene.pushPhase(new ModifierRewardPhase(this.scene, !(this.scene.currentBattle.waveIndex % 250) ? modifierTypes.VOUCHER_PREMIUM : modifierTypes.VOUCHER_PLUS));
this.scene.pushPhase(new AddEnemyBuffModifierPhase(this.scene));
}
2023-11-28 21:59:40 +00:00
}
this.scene.pushPhase(new NewBattlePhase(this.scene));
2024-03-18 00:31:09 +00:00
} else {
this.scene.currentBattle.battleType = BattleType.CLEAR;
2024-03-18 00:58:12 +00:00
this.scene.score += this.scene.gameMode.getClearScoreBonus();
2024-03-19 04:03:41 +00:00
this.scene.updateScoreText();
this.scene.pushPhase(new GameOverPhase(this.scene, true));
2024-03-18 00:31:09 +00:00
}
}
2023-04-10 18:12:01 +00:00
this.end();
}
}
export class TrainerVictoryPhase extends BattlePhase {
constructor(scene: BattleScene) {
super(scene);
}
start() {
2024-04-18 04:24:57 +00:00
this.scene.disableMenu = true;
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.playBgm(this.scene.currentBattle.trainer?.config.victoryBgm);
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.unshiftPhase(new MoneyRewardPhase(this.scene, this.scene.currentBattle.trainer?.config.moneyMultiplier!)); // TODO: is this bang correct?
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
const modifierRewardFuncs = this.scene.currentBattle.trainer?.config.modifierRewardFuncs!; // TODO: is this bang correct?
for (const modifierRewardFunc of modifierRewardFuncs) {
this.scene.unshiftPhase(new ModifierRewardPhase(this.scene, modifierRewardFunc));
}
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
const trainerType = this.scene.currentBattle.trainer?.config.trainerType!; // TODO: is this bang correct?
if (vouchers.hasOwnProperty(TrainerType[trainerType])) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
if (!this.scene.validateVoucher(vouchers[TrainerType[trainerType]]) && this.scene.currentBattle.trainer?.config.isBoss) {
this.scene.unshiftPhase(new ModifierRewardPhase(this.scene, [modifierTypes.VOUCHER, modifierTypes.VOUCHER, modifierTypes.VOUCHER_PLUS, modifierTypes.VOUCHER_PREMIUM][vouchers[TrainerType[trainerType]].voucherType]));
}
}
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
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);
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
message = message!; // tell TS compiler it's defined now
2024-05-23 23:45:04 +00:00
const showMessage = () => {
const originalFunc = showMessageOrEnd;
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
showMessageOrEnd = () => this.scene.ui.showDialogue(message, this.scene.currentBattle.trainer?.getName(), null, originalFunc);
showMessageOrEnd();
};
let showMessageOrEnd = () => this.end();
if (victoryMessages?.length) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
if (this.scene.currentBattle.trainer?.config.hasCharSprite && !this.scene.ui.shouldSkipDialogue(message)) {
const originalFunc = showMessageOrEnd;
showMessageOrEnd = () => this.scene.charSprite.hide().then(() => this.scene.hideFieldOverlay(250).then(() => originalFunc()));
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.showFieldOverlay(500).then(() => this.scene.charSprite.showCharacter(this.scene.currentBattle.trainer?.getKey()!, getCharVariantFromDialogue(victoryMessages[0])).then(() => showMessage())); // TODO: is this bang correct?
} else {
showMessage();
}
} else {
showMessageOrEnd();
}
}, null, true);
this.showEnemyTrainer();
}
}
export class MoneyRewardPhase extends BattlePhase {
private moneyMultiplier: number;
constructor(scene: BattleScene, moneyMultiplier: number) {
super(scene);
this.moneyMultiplier = moneyMultiplier;
}
start() {
const moneyAmount = new Utils.IntegerHolder(this.scene.getWaveMoneyAmount(this.moneyMultiplier));
2024-01-18 22:22:18 +00:00
this.scene.applyModifiers(MoneyMultiplierModifier, true, moneyAmount);
2024-06-23 01:03:15 +00:00
if (this.scene.arena.getTag(ArenaTagType.HAPPY_HOUR)) {
moneyAmount.value *= 2;
}
2024-04-22 01:17:07 +00:00
this.scene.addMoney(moneyAmount.value);
const userLocale = navigator.language || "en-US";
const formattedMoneyAmount = moneyAmount.value.toLocaleString(userLocale);
const message = i18next.t("battle:moneyWon", { moneyAmount: formattedMoneyAmount });
this.scene.ui.showText(message, null, () => this.end(), null, true);
}
}
export class ModifierRewardPhase extends BattlePhase {
protected modifierType: ModifierType;
constructor(scene: BattleScene, modifierTypeFunc: ModifierTypeFunc) {
super(scene);
this.modifierType = getModifierType(modifierTypeFunc);
}
start() {
super.start();
this.doReward().then(() => this.end());
}
doReward(): Promise<void> {
return new Promise<void>(resolve => {
const newModifier = this.modifierType.newModifier();
this.scene.addModifier(newModifier).then(() => {
this.scene.playSound("item_fanfare");
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.ui.showText(i18next.t("battle:rewardGain", { modifierName: newModifier?.type.name }), null, () => resolve(), null, true);
});
});
}
}
export class GameOverModifierRewardPhase extends ModifierRewardPhase {
constructor(scene: BattleScene, modifierTypeFunc: ModifierTypeFunc) {
super(scene, modifierTypeFunc);
}
doReward(): Promise<void> {
return new Promise<void>(resolve => {
const newModifier = this.modifierType.newModifier();
this.scene.addModifier(newModifier).then(() => {
this.scene.playSound("level_up_fanfare");
this.scene.ui.setMode(Mode.MESSAGE);
2024-05-17 10:51:48 +00:00
this.scene.ui.fadeIn(250).then(() => {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.ui.showText(i18next.t("battle:rewardGain", { modifierName: newModifier?.type.name }), null, () => {
this.scene.time.delayedCall(1500, () => this.scene.arenaBg.setVisible(true));
resolve();
}, null, true, 1500);
2024-05-17 10:51:48 +00:00
});
});
});
}
}
export class RibbonModifierRewardPhase extends ModifierRewardPhase {
private species: PokemonSpecies;
constructor(scene: BattleScene, modifierTypeFunc: ModifierTypeFunc, species: PokemonSpecies) {
super(scene, modifierTypeFunc);
this.species = species;
}
doReward(): Promise<void> {
return new Promise<void>(resolve => {
const newModifier = this.modifierType.newModifier();
this.scene.addModifier(newModifier).then(() => {
this.scene.playSound("level_up_fanfare");
this.scene.ui.setMode(Mode.MESSAGE);
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
this.scene.ui.showText(i18next.t("battle:beatModeFirstTime", {
speciesName: this.species.name,
gameMode: this.scene.gameMode.getName(),
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
newModifier: newModifier?.type.name
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
}), null, () => {
2024-05-17 01:41:38 +00:00
resolve();
}, null, true, 1500);
});
});
}
}
export class GameOverPhase extends BattlePhase {
private victory: boolean;
private firstRibbons: PokemonSpecies[] = [];
constructor(scene: BattleScene, victory?: boolean) {
super(scene);
this.victory = !!victory;
}
start() {
super.start();
// Failsafe if players somehow skip floor 200 in classic mode
if (this.scene.gameMode.isClassic && this.scene.currentBattle.waveIndex > 200) {
this.victory = true;
}
2024-05-28 01:36:32 +00:00
if (this.victory && this.scene.gameMode.isEndless) {
2024-05-28 01:01:13 +00:00
this.scene.ui.showDialogue(i18next.t("PGMmiscDialogue:ending_endless"), i18next.t("PGMmiscDialogue:ending_name"), 0, () => this.handleGameOver());
} else if (this.victory || !this.scene.enableRetries) {
this.handleGameOver();
} else {
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
this.scene.ui.showText(i18next.t("battle:retryBattle"), null, () => {
2024-04-04 19:22:05 +00:00
this.scene.ui.setMode(Mode.CONFIRM, () => {
this.scene.ui.fadeOut(1250).then(() => {
this.scene.reset();
2024-04-04 19:22:05 +00:00
this.scene.clearPhaseQueue();
this.scene.gameData.loadSession(this.scene, this.scene.sessionSlotId).then(() => {
this.scene.pushPhase(new EncounterPhase(this.scene, true));
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
const availablePartyMembers = this.scene.getParty().filter(p => p.isAllowedInBattle()).length;
2024-05-23 23:45:04 +00:00
2024-04-04 19:22:05 +00:00
this.scene.pushPhase(new SummonPhase(this.scene, 0));
if (this.scene.currentBattle.double && availablePartyMembers > 1) {
2024-04-04 19:22:05 +00:00
this.scene.pushPhase(new SummonPhase(this.scene, 1));
}
2024-04-04 19:22:05 +00:00
if (this.scene.currentBattle.waveIndex > 1 && this.scene.currentBattle.battleType !== BattleType.TRAINER) {
this.scene.pushPhase(new CheckSwitchPhase(this.scene, 0, this.scene.currentBattle.double));
if (this.scene.currentBattle.double && availablePartyMembers > 1) {
2024-04-04 19:22:05 +00:00
this.scene.pushPhase(new CheckSwitchPhase(this.scene, 1, this.scene.currentBattle.double));
}
2024-04-04 19:22:05 +00:00
}
this.scene.ui.fadeIn(1250);
this.end();
});
});
}, () => this.handleGameOver(), false, 0, 0, 1000);
2024-04-04 19:22:05 +00:00
});
}
}
handleGameOver(): void {
const doGameOver = (newClear: boolean) => {
2024-05-17 01:41:38 +00:00
this.scene.disableMenu = true;
this.scene.time.delayedCall(1000, () => {
let firstClear = false;
if (this.victory && newClear) {
2024-03-17 02:06:56 +00:00
if (this.scene.gameMode.isClassic) {
firstClear = this.scene.validateAchv(achvs.CLASSIC_VICTORY);
this.scene.validateAchv(achvs.UNEVOLVED_CLASSIC_VICTORY);
2024-03-17 02:06:56 +00:00
this.scene.gameData.gameStats.sessionsWon++;
for (const pokemon of this.scene.getParty()) {
this.awardRibbon(pokemon);
if (pokemon.species.getRootSpeciesId() !== pokemon.species.getRootSpeciesId(true)) {
this.awardRibbon(pokemon, true);
}
}
} else if (this.scene.gameMode.isDaily && newClear) {
2024-03-17 02:06:56 +00:00
this.scene.gameData.gameStats.dailyRunSessionsWon++;
}
}
const fadeDuration = this.victory ? 10000 : 5000;
this.scene.fadeOutBgm(fadeDuration, true);
const activeBattlers = this.scene.getField().filter(p => p?.isActive(true));
activeBattlers.map(p => p.hideInfo());
this.scene.ui.fadeOut(fadeDuration).then(() => {
2024-05-17 01:41:38 +00:00
activeBattlers.map(a => a.setVisible(false));
this.scene.setFieldScale(1, true);
this.scene.clearPhaseQueue();
this.scene.ui.clearText();
2024-05-17 01:41:38 +00:00
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
if (this.victory && this.scene.gameMode.isChallenge) {
this.scene.gameMode.challenges.forEach(c => this.scene.validateAchvs(ChallengeAchv, c));
}
2024-05-17 01:41:38 +00:00
const clear = (endCardPhase?: EndCardPhase) => {
if (newClear) {
2024-05-17 01:41:38 +00:00
this.handleUnlocks();
}
2024-05-17 01:41:38 +00:00
if (this.victory && newClear) {
for (const species of this.firstRibbons) {
2024-05-17 01:41:38 +00:00
this.scene.unshiftPhase(new RibbonModifierRewardPhase(this.scene, modifierTypes.VOUCHER_PLUS, species));
}
if (!firstClear) {
2024-05-17 01:41:38 +00:00
this.scene.unshiftPhase(new GameOverModifierRewardPhase(this.scene, modifierTypes.VOUCHER_PREMIUM));
}
2024-05-17 01:41:38 +00:00
}
this.scene.pushPhase(new PostGameOverPhase(this.scene, endCardPhase));
this.end();
};
2024-05-17 01:41:38 +00:00
2024-05-17 04:20:18 +00:00
if (this.victory && this.scene.gameMode.isClassic) {
const message = miscDialogue.ending[this.scene.gameData.gender === PlayerGender.FEMALE ? 0 : 1];
if (!this.scene.ui.shouldSkipDialogue(message)) {
this.scene.ui.fadeIn(500).then(() => {
this.scene.charSprite.showCharacter(`rival_${this.scene.gameData.gender === PlayerGender.FEMALE ? "m" : "f"}`, getCharVariantFromDialogue(miscDialogue.ending[this.scene.gameData.gender === PlayerGender.FEMALE ? 0 : 1])).then(() => {
this.scene.ui.showDialogue(message, this.scene.gameData.gender === PlayerGender.FEMALE ? trainerConfigs[TrainerType.RIVAL].name : trainerConfigs[TrainerType.RIVAL].nameFemale, null, () => {
this.scene.ui.fadeOut(500).then(() => {
this.scene.charSprite.hide().then(() => {
const endCardPhase = new EndCardPhase(this.scene);
this.scene.unshiftPhase(endCardPhase);
clear(endCardPhase);
});
2024-05-17 01:41:38 +00:00
});
});
});
});
} else {
const endCardPhase = new EndCardPhase(this.scene);
this.scene.unshiftPhase(endCardPhase);
clear(endCardPhase);
}
} else {
2024-05-17 01:41:38 +00:00
clear();
}
});
});
};
/* Added a local check to see if the game is running offline on victory
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.apiFetch(`savedata/session/newclear?slot=${this.scene.sessionSlotId}&clientSessionId=${clientSessionId}`, true)
.then(response => response.json())
.then(newClear => doGameOver(newClear));
} else {
this.scene.gameData.offlineNewClear(this.scene).then(result => {
doGameOver(result);
});
}
} else {
doGameOver(false);
}
}
2023-04-29 05:40:24 +00:00
handleUnlocks(): void {
2024-03-26 01:09:32 +00:00
if (this.victory && this.scene.gameMode.isClassic) {
if (!this.scene.gameData.unlocks[Unlockables.ENDLESS_MODE]) {
2023-06-05 15:39:49 +00:00
this.scene.unshiftPhase(new UnlockPhase(this.scene, Unlockables.ENDLESS_MODE));
}
if (this.scene.getParty().filter(p => p.fusionSpecies).length && !this.scene.gameData.unlocks[Unlockables.SPLICED_ENDLESS_MODE]) {
this.scene.unshiftPhase(new UnlockPhase(this.scene, Unlockables.SPLICED_ENDLESS_MODE));
}
if (!this.scene.gameData.unlocks[Unlockables.MINI_BLACK_HOLE]) {
2023-06-05 15:39:49 +00:00
this.scene.unshiftPhase(new UnlockPhase(this.scene, Unlockables.MINI_BLACK_HOLE));
}
if (!this.scene.gameData.unlocks[Unlockables.EVIOLITE] && this.scene.getParty().some(p => p.getSpeciesForm(true).speciesId in pokemonEvolutions)) {
this.scene.unshiftPhase(new UnlockPhase(this.scene, Unlockables.EVIOLITE));
}
2023-06-05 15:39:49 +00:00
}
2023-04-29 05:40:24 +00:00
}
awardRibbon(pokemon: Pokemon, forStarter: boolean = false): void {
const speciesId = getPokemonSpecies(pokemon.species.speciesId);
const speciesRibbonCount = this.scene.gameData.incrementRibbonCount(speciesId, forStarter);
// first time classic win, award voucher
if (speciesRibbonCount === 1) {
this.firstRibbons.push(getPokemonSpecies(pokemon.species.getRootSpeciesId(forStarter)));
}
}
2023-04-29 05:40:24 +00:00
}
2024-05-17 01:41:38 +00:00
export class EndCardPhase extends Phase {
public endCard: Phaser.GameObjects.Image;
public text: Phaser.GameObjects.Text;
constructor(scene: BattleScene) {
super(scene);
}
start(): void {
super.start();
this.scene.ui.getMessageHandler().bg.setVisible(false);
this.scene.ui.getMessageHandler().nameBoxContainer.setVisible(false);
this.endCard = this.scene.add.image(0, 0, `end_${this.scene.gameData.gender === PlayerGender.FEMALE ? "f" : "m"}`);
2024-05-17 01:41:38 +00:00
this.endCard.setOrigin(0);
this.endCard.setScale(0.5);
this.scene.field.add(this.endCard);
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
this.text = addTextObject(this.scene, this.scene.game.canvas.width / 12, (this.scene.game.canvas.height / 6) - 16, i18next.t("battle:congratulations"), TextStyle.SUMMARY, { fontSize: "128px" });
2024-05-17 01:41:38 +00:00
this.text.setOrigin(0.5);
this.scene.field.add(this.text);
this.scene.ui.clearText();
2024-05-23 23:45:04 +00:00
2024-05-17 01:41:38 +00:00
this.scene.ui.fadeIn(1000).then(() => {
2024-05-23 23:45:04 +00:00
this.scene.ui.showText("", null, () => {
2024-05-17 01:41:38 +00:00
this.scene.ui.getMessageHandler().bg.setVisible(true);
this.end();
}, null, true);
});
}
}
export class UnlockPhase extends Phase {
2023-04-29 05:40:24 +00:00
private unlockable: Unlockables;
constructor(scene: BattleScene, unlockable: Unlockables) {
super(scene);
this.unlockable = unlockable;
}
start(): void {
this.scene.time.delayedCall(2000, () => {
this.scene.gameData.unlocks[this.unlockable] = true;
this.scene.playSound("level_up_fanfare");
this.scene.ui.setMode(Mode.MESSAGE);
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
this.scene.ui.showText(i18next.t("battle:unlockedSomething", { unlockedThing: getUnlockableName(this.unlockable) }), null, () => {
2024-05-17 01:41:38 +00:00
this.scene.time.delayedCall(1500, () => this.scene.arenaBg.setVisible(true));
this.end();
}, null, true, 1500);
});
}
}
export class PostGameOverPhase extends Phase {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
private endCardPhase: EndCardPhase | null;
2024-05-17 01:41:38 +00:00
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
constructor(scene: BattleScene, endCardPhase?: EndCardPhase) {
super(scene);
2024-05-17 01:41:38 +00:00
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.endCardPhase = endCardPhase!; // TODO: is this bang correct?
}
start() {
super.start();
2024-05-17 01:41:38 +00:00
const saveAndReset = () => {
this.scene.gameData.saveAll(this.scene, true, true, true).then(success => {
if (!success) {
return this.scene.reset(true);
}
2024-05-17 01:41:38 +00:00
this.scene.gameData.tryClearSession(this.scene, this.scene.sessionSlotId).then((success: boolean | [boolean, boolean]) => {
if (!success[0]) {
2024-05-17 01:41:38 +00:00
return this.scene.reset(true);
}
2024-05-17 01:41:38 +00:00
this.scene.reset();
this.scene.unshiftPhase(new TitlePhase(this.scene));
this.end();
});
2023-04-29 05:40:24 +00:00
});
2024-05-17 01:41:38 +00:00
};
if (this.endCardPhase) {
this.scene.ui.fadeOut(500).then(() => {
this.scene.ui.getMessageHandler().bg.setVisible(true);
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.endCardPhase?.endCard.destroy();
this.endCardPhase?.text.destroy();
2024-05-17 01:41:38 +00:00
saveAndReset();
});
} else {
2024-05-17 01:41:38 +00:00
saveAndReset();
}
2023-04-29 05:40:24 +00:00
}
}
/**
* Opens the party selector UI and transitions into a {@linkcode SwitchSummonPhase}
* for the player (if a switch would be valid for the current battle state).
*/
2023-04-10 18:12:01 +00:00
export class SwitchPhase extends BattlePhase {
protected fieldIndex: integer;
2023-04-10 18:12:01 +00:00
private isModal: boolean;
private doReturn: boolean;
/**
* Creates a new SwitchPhase
* @param scene {@linkcode BattleScene} Current battle scene
* @param fieldIndex Field index to switch out
* @param isModal Indicates if the switch should be forced (true) or is
* optional (false).
* @param doReturn Indicates if the party member on the field should be
* recalled to ball or has already left the field. Passed to {@linkcode SwitchSummonPhase}.
*/
constructor(scene: BattleScene, fieldIndex: integer, isModal: boolean, doReturn: boolean) {
2023-04-10 18:12:01 +00:00
super(scene);
this.fieldIndex = fieldIndex;
2023-04-10 18:12:01 +00:00
this.isModal = isModal;
this.doReturn = doReturn;
}
start() {
super.start();
// Skip modal switch if impossible (no remaining party members that aren't in battle)
if (this.isModal && !this.scene.getParty().filter(p => p.isAllowedInBattle() && !p.isActive(true)).length) {
return super.end();
}
// Skip if the fainted party member has been revived already. doReturn is
// only passed as `false` from FaintPhase (as opposed to other usages such
// as ForceSwitchOutAttr or CheckSwitchPhase), so we only want to check this
// if the mon should have already been returned but is still alive and well
// on the field. see also; battle.test.ts
if (this.isModal && !this.doReturn && !this.scene.getParty()[this.fieldIndex].isFainted()) {
return super.end();
}
2024-05-19 23:02:17 +00:00
// Check if there is any space still in field
if (this.isModal && this.scene.getPlayerField().filter(p => p.isAllowedInBattle() && p.isActive(true)).length >= this.scene.currentBattle.getBattlerCount()) {
2024-05-19 23:02:17 +00:00
return super.end();
}
2024-05-19 23:02:17 +00:00
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
// Override field index to 0 in case of double battle where 2/3 remaining legal party members fainted at once
const fieldIndex = this.scene.currentBattle.getBattlerCount() === 1 || this.scene.getParty().filter(p => p.isAllowedInBattle()).length > 1 ? this.fieldIndex : 0;
2023-11-25 20:53:38 +00:00
this.scene.ui.setMode(Mode.PARTY, this.isModal ? PartyUiMode.FAINT_SWITCH : PartyUiMode.POST_BATTLE_SWITCH, fieldIndex, (slotIndex: integer, option: PartyOption) => {
if (slotIndex >= this.scene.currentBattle.getBattlerCount() && slotIndex < 6) {
2023-11-25 20:53:38 +00:00
this.scene.unshiftPhase(new SwitchSummonPhase(this.scene, fieldIndex, slotIndex, this.doReturn, option === PartyOption.PASS_BATON));
}
2023-04-10 18:12:01 +00:00
this.scene.ui.setMode(Mode.MESSAGE).then(() => super.end());
}, PartyUiHandler.FilterNonFainted);
}
}
2023-10-07 20:08:33 +00:00
export class ExpPhase extends PlayerPartyMemberPokemonPhase {
2023-04-10 18:12:01 +00:00
private expValue: number;
constructor(scene: BattleScene, partyMemberIndex: integer, expValue: number) {
super(scene, partyMemberIndex);
this.expValue = expValue;
}
start() {
super.start();
const pokemon = this.getPokemon();
const exp = new Utils.NumberHolder(this.expValue);
2023-04-20 23:44:56 +00:00
this.scene.applyModifiers(ExpBoosterModifier, true, exp);
2023-04-10 18:12:01 +00:00
exp.value = Math.floor(exp.value);
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
this.scene.ui.showText(i18next.t("battle:expGain", { pokemonName: getPokemonNameWithAffix(pokemon), exp: exp.value }), null, () => {
2023-04-10 18:12:01 +00:00
const lastLevel = pokemon.level;
pokemon.addExp(exp.value);
const newLevel = pokemon.level;
if (newLevel > lastLevel) {
2023-04-10 18:12:01 +00:00
this.scene.unshiftPhase(new LevelUpPhase(this.scene, this.partyMemberIndex, lastLevel, newLevel));
}
2023-04-10 18:12:01 +00:00
pokemon.updateInfo().then(() => this.end());
}, null, true);
}
}
2023-10-07 20:08:33 +00:00
export class ShowPartyExpBarPhase extends PlayerPartyMemberPokemonPhase {
private expValue: number;
constructor(scene: BattleScene, partyMemberIndex: integer, expValue: number) {
super(scene, partyMemberIndex);
this.expValue = expValue;
}
start() {
super.start();
const pokemon = this.getPokemon();
const exp = new Utils.NumberHolder(this.expValue);
this.scene.applyModifiers(ExpBoosterModifier, true, exp);
exp.value = Math.floor(exp.value);
const lastLevel = pokemon.level;
pokemon.addExp(exp.value);
const newLevel = pokemon.level;
if (newLevel > lastLevel) {
this.scene.unshiftPhase(new LevelUpPhase(this.scene, this.partyMemberIndex, lastLevel, newLevel));
}
this.scene.unshiftPhase(new HidePartyExpBarPhase(this.scene));
pokemon.updateInfo();
if (this.scene.expParty === ExpNotification.SKIP) {
this.end();
} else if (this.scene.expParty === ExpNotification.ONLY_LEVEL_UP) {
if (newLevel > lastLevel) { // this means if we level up
// instead of displaying the exp gain in the small frame, we display the new level
// we use the same method for mode 0 & 1, by giving a parameter saying to display the exp or the level
this.scene.partyExpBar.showPokemonExp(pokemon, exp.value, this.scene.expParty === ExpNotification.ONLY_LEVEL_UP, newLevel).then(() => {
setTimeout(() => this.end(), 800 / Math.pow(2, this.scene.expGainsSpeed));
});
} else {
this.end();
}
} else if (this.scene.expGainsSpeed < 3) {
this.scene.partyExpBar.showPokemonExp(pokemon, exp.value, false, newLevel).then(() => {
setTimeout(() => this.end(), 500 / Math.pow(2, this.scene.expGainsSpeed));
});
} else {
this.end();
}
}
}
export class HidePartyExpBarPhase extends BattlePhase {
constructor(scene: BattleScene) {
super(scene);
}
2023-04-10 18:12:01 +00:00
start() {
super.start();
2023-04-10 18:12:01 +00:00
this.scene.partyExpBar.hide().then(() => this.end());
}
2023-04-10 18:12:01 +00:00
}
2023-10-07 20:08:33 +00:00
export class LevelUpPhase extends PlayerPartyMemberPokemonPhase {
2023-04-10 18:12:01 +00:00
private lastLevel: integer;
private level: integer;
constructor(scene: BattleScene, partyMemberIndex: integer, lastLevel: integer, level: integer) {
super(scene, partyMemberIndex);
this.lastLevel = lastLevel;
this.level = level;
this.scene = scene;
2023-04-10 18:12:01 +00:00
}
start() {
super.start();
if (this.level > this.scene.gameData.gameStats.highestLevel) {
this.scene.gameData.gameStats.highestLevel = this.level;
}
this.scene.validateAchvs(LevelAchv, new Utils.IntegerHolder(this.level));
2023-04-10 18:12:01 +00:00
const pokemon = this.getPokemon();
const prevStats = pokemon.stats.slice(0);
pokemon.calculateStats();
pokemon.updateInfo();
if (this.scene.expParty === ExpNotification.DEFAULT) {
this.scene.playSound("level_up_fanfare");
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
this.scene.ui.showText(i18next.t("battle:levelUp", { pokemonName: getPokemonNameWithAffix(this.getPokemon()), level: this.level }), null, () => this.scene.ui.getMessageHandler().promptLevelUpStats(this.partyMemberIndex, prevStats, false).then(() => this.end()), null, true);
} else if (this.scene.expParty === ExpNotification.SKIP) {
this.end();
} else {
// we still want to display the stats if activated
this.scene.ui.getMessageHandler().promptLevelUpStats(this.partyMemberIndex, prevStats, false).then(() => this.end());
}
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
if (this.lastLevel < 100) { // this feels like an unnecessary optimization
const levelMoves = this.getPokemon().getLevelMoves(this.lastLevel + 1);
for (const lm of levelMoves) {
this.scene.unshiftPhase(new LearnMovePhase(this.scene, this.partyMemberIndex, lm[1]));
}
}
if (!pokemon.pauseEvolutions) {
const evolution = pokemon.getEvolution();
if (evolution) {
2024-01-10 04:34:43 +00:00
this.scene.unshiftPhase(new EvolutionPhase(this.scene, pokemon as PlayerPokemon, evolution, this.lastLevel));
}
}
2023-04-10 18:12:01 +00:00
}
}
2023-10-07 20:08:33 +00:00
export class LearnMovePhase extends PlayerPartyMemberPokemonPhase {
2023-04-10 18:12:01 +00:00
private moveId: Moves;
constructor(scene: BattleScene, partyMemberIndex: integer, moveId: Moves) {
super(scene, partyMemberIndex);
this.moveId = moveId;
}
start() {
super.start();
const pokemon = this.getPokemon();
2023-04-21 01:32:48 +00:00
const move = allMoves[this.moveId];
2023-04-10 18:12:01 +00:00
const existingMoveIndex = pokemon.getMoveset().findIndex(m => m?.moveId === move.id);
2023-04-10 18:12:01 +00:00
if (existingMoveIndex > -1) {
2023-12-07 22:43:56 +00:00
return this.end();
}
2023-04-10 18:12:01 +00:00
const emptyMoveIndex = pokemon.getMoveset().length < 4
? pokemon.getMoveset().length
: pokemon.getMoveset().findIndex(m => m === null);
2023-04-10 18:12:01 +00:00
const messageMode = this.scene.ui.getHandler() instanceof EvolutionSceneHandler
? Mode.EVOLUTION_SCENE
: Mode.MESSAGE;
if (emptyMoveIndex > -1) {
pokemon.setMove(emptyMoveIndex, this.moveId);
initMoveAnim(this.scene, this.moveId).then(() => {
loadMoveAnimAssets(this.scene, [this.moveId], true)
2023-04-10 18:12:01 +00:00
.then(() => {
this.scene.ui.setMode(messageMode).then(() => {
this.scene.playSound("level_up_fanfare");
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
this.scene.ui.showText(i18next.t("battle:learnMove", { pokemonName: getPokemonNameWithAffix(pokemon), moveName: move.name }), null, () => {
2024-01-10 04:34:43 +00:00
this.scene.triggerPokemonFormChange(pokemon, SpeciesFormChangeMoveLearnedTrigger, true);
this.end();
}, messageMode === Mode.EVOLUTION_SCENE ? 1000 : null, true);
2023-04-10 18:12:01 +00:00
});
});
});
2023-04-10 18:12:01 +00:00
} else {
this.scene.ui.setMode(messageMode).then(() => {
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
this.scene.ui.showText(i18next.t("battle:learnMovePrompt", { pokemonName: getPokemonNameWithAffix(pokemon), moveName: move.name }), null, () => {
this.scene.ui.showText(i18next.t("battle:learnMoveLimitReached", { pokemonName: getPokemonNameWithAffix(pokemon) }), null, () => {
this.scene.ui.showText(i18next.t("battle:learnMoveReplaceQuestion", { moveName: move.name }), null, () => {
2023-04-10 18:12:01 +00:00
const noHandler = () => {
this.scene.ui.setMode(messageMode).then(() => {
this.scene.ui.showText(i18next.t("battle:learnMoveStopTeaching", { moveName: move.name }), null, () => {
2023-04-10 18:12:01 +00:00
this.scene.ui.setModeWithoutClear(Mode.CONFIRM, () => {
this.scene.ui.setMode(messageMode);
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
this.scene.ui.showText(i18next.t("battle:learnMoveNotLearned", { pokemonName: getPokemonNameWithAffix(pokemon), moveName: move.name }), null, () => this.end(), null, true);
2023-04-10 18:12:01 +00:00
}, () => {
this.scene.ui.setMode(messageMode);
this.scene.unshiftPhase(new LearnMovePhase(this.scene, this.partyMemberIndex, this.moveId));
this.end();
});
});
});
};
this.scene.ui.setModeWithoutClear(Mode.CONFIRM, () => {
this.scene.ui.setMode(messageMode);
this.scene.ui.showText(i18next.t("battle:learnMoveForgetQuestion"), null, () => {
2023-04-10 18:12:01 +00:00
this.scene.ui.setModeWithoutClear(Mode.SUMMARY, this.getPokemon(), SummaryUiMode.LEARN_MOVE, move, (moveIndex: integer) => {
if (moveIndex === 4) {
noHandler();
return;
}
this.scene.ui.setMode(messageMode).then(() => {
this.scene.ui.showText(i18next.t("battle:countdownPoof"), null, () => {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.ui.showText(i18next.t("battle:learnMoveForgetSuccess", { pokemonName: getPokemonNameWithAffix(pokemon), moveName: pokemon.moveset[moveIndex]!.getName() }), null, () => { // TODO: is the bang correct?
this.scene.ui.showText(i18next.t("battle:learnMoveAnd"), null, () => {
pokemon.setMove(moveIndex, Moves.NONE);
2023-04-10 18:12:01 +00:00
this.scene.unshiftPhase(new LearnMovePhase(this.scene, this.partyMemberIndex, this.moveId));
this.end();
}, null, true);
}, null, true);
}, null, true);
});
});
}, null, true);
}, noHandler);
});
}, null, true);
}, null, true);
});
}
}
}
2023-04-14 05:08:44 +00:00
export class PokemonHealPhase extends CommonAnimPhase {
private hpHealed: integer;
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
private message: string | null;
2023-04-16 04:29:55 +00:00
private showFullHpMessage: boolean;
private skipAnim: boolean;
2023-06-06 14:14:53 +00:00
private revive: boolean;
private healStatus: boolean;
private preventFullHeal: boolean;
2023-04-14 05:08:44 +00:00
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
constructor(scene: BattleScene, battlerIndex: BattlerIndex, hpHealed: integer, message: string | null, showFullHpMessage: boolean, skipAnim: boolean = false, revive: boolean = false, healStatus: boolean = false, preventFullHeal: boolean = false) {
super(scene, battlerIndex, undefined, CommonAnim.HEALTH_UP);
2023-04-14 05:08:44 +00:00
this.hpHealed = hpHealed;
2023-04-16 04:29:55 +00:00
this.message = message;
this.showFullHpMessage = showFullHpMessage;
this.skipAnim = skipAnim;
this.revive = revive;
this.healStatus = healStatus;
this.preventFullHeal = preventFullHeal;
2023-04-16 04:29:55 +00:00
}
start() {
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
if (!this.skipAnim && (this.revive || this.getPokemon().hp) && !this.getPokemon().isFullHp()) {
2023-04-16 04:29:55 +00:00
super.start();
} else {
2023-04-16 04:29:55 +00:00
this.end();
}
2023-04-14 05:08:44 +00:00
}
end() {
const pokemon = this.getPokemon();
2024-05-23 23:45:04 +00:00
2023-06-06 14:14:53 +00:00
if (!pokemon.isOnField() || (!this.revive && !pokemon.isActive())) {
2023-04-23 05:03:09 +00:00
super.end();
return;
}
2023-04-14 05:08:44 +00:00
const hasMessage = !!this.message;
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
const healOrDamage = (!pokemon.isFullHp() || this.hpHealed < 0);
let lastStatusEffect = StatusEffect.NONE;
if (healOrDamage) {
2023-04-20 19:46:05 +00:00
const hpRestoreMultiplier = new Utils.IntegerHolder(1);
if (!this.revive) {
2023-06-06 14:14:53 +00:00
this.scene.applyModifiers(HealingBoosterModifier, this.player, hpRestoreMultiplier);
}
2024-02-20 16:42:05 +00:00
const healAmount = new Utils.NumberHolder(Math.floor(this.hpHealed * hpRestoreMultiplier.value));
if (healAmount.value < 0) {
2024-05-25 02:57:28 +00:00
pokemon.damageAndUpdate(healAmount.value * -1, HitResult.HEAL as DamageResult);
healAmount.value = 0;
}
// Prevent healing to full if specified (in case of healing tokens so Sturdy doesn't cause a softlock)
if (this.preventFullHeal && pokemon.hp + healAmount.value >= pokemon.getMaxHp()) {
healAmount.value = (pokemon.getMaxHp() - pokemon.hp) - 1;
}
2024-01-08 04:17:24 +00:00
healAmount.value = pokemon.heal(healAmount.value);
if (healAmount.value) {
this.scene.damageNumberHandler.add(pokemon, healAmount.value, HitResult.HEAL);
}
if (pokemon.isPlayer()) {
this.scene.validateAchvs(HealAchv, healAmount);
if (healAmount.value > this.scene.gameData.gameStats.highestHeal) {
this.scene.gameData.gameStats.highestHeal = healAmount.value;
}
}
if (this.healStatus && !this.revive && pokemon.status) {
lastStatusEffect = pokemon.status.effect;
pokemon.resetStatus();
}
2023-04-16 04:29:55 +00:00
pokemon.updateInfo().then(() => super.end());
2024-03-11 22:13:07 +00:00
} else if (this.healStatus && !this.revive && pokemon.status) {
lastStatusEffect = pokemon.status.effect;
pokemon.resetStatus();
pokemon.updateInfo().then(() => super.end());
} else if (this.showFullHpMessage) {
this.message = i18next.t("battle:hpIsFull", { pokemonName: getPokemonNameWithAffix(pokemon) });
}
2023-04-16 04:29:55 +00:00
if (this.message) {
2023-04-21 23:30:04 +00:00
this.scene.queueMessage(this.message);
}
2023-04-16 04:29:55 +00:00
if (this.healStatus && lastStatusEffect && !hasMessage) {
[Localization] localized status-effect.ts and translate. (#2528) * make postposition not to dynamic for localize * localize status-effect.ts * added test code, modified english postposition, modifed toxic_orb test to make it always fix in English. * Update src/locales/zh_CN/status-effect.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/status-effect.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/status-effect.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/status-effect.ts * added test code for check message key * remove multi-language tests (except english) * Update src/locales/pt_BR/status-effect.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * remove language and change test code to check method call and parameter * Update src/locales/es/status-effect.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/en/status-effect.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Apply review suggestion * Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * add Test with empty string parameter * Update src/locales/es/status-effect.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update src/locales/fr/status-effect.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com>
2024-07-02 14:22:46 +00:00
this.scene.queueMessage(getStatusEffectHealText(lastStatusEffect, getPokemonNameWithAffix(pokemon)));
}
if (!healOrDamage && !lastStatusEffect) {
2023-04-16 04:29:55 +00:00
super.end();
}
2023-04-14 05:08:44 +00:00
}
}
export class AttemptCapturePhase extends PokemonPhase {
2023-04-10 18:12:01 +00:00
private pokeballType: PokeballType;
private pokeball: Phaser.GameObjects.Sprite;
private originalY: number;
constructor(scene: BattleScene, targetIndex: integer, pokeballType: PokeballType) {
super(scene, BattlerIndex.ENEMY + targetIndex);
2023-04-10 18:12:01 +00:00
this.pokeballType = pokeballType;
}
start() {
super.start();
2024-01-08 04:17:24 +00:00
const pokemon = this.getPokemon() as EnemyPokemon;
if (!pokemon?.hp) {
2023-12-07 22:43:56 +00:00
return this.end();
}
2023-04-10 18:12:01 +00:00
this.scene.pokeballCounts[this.pokeballType]--;
this.originalY = pokemon.y;
const _3m = 3 * pokemon.getMaxHp();
2023-04-10 18:12:01 +00:00
const _2h = 2 * pokemon.hp;
const catchRate = pokemon.species.catchRate;
const pokeballMultiplier = getPokeballCatchMultiplier(this.pokeballType);
const statusMultiplier = pokemon.status ? getStatusEffectCatchRateMultiplier(pokemon.status.effect) : 1;
2023-04-10 18:12:01 +00:00
const x = Math.round((((_3m - _2h) * catchRate * pokeballMultiplier) / _3m) * statusMultiplier);
const y = Math.round(65536 / Math.sqrt(Math.sqrt(255 / x)));
const fpOffset = pokemon.getFieldPositionOffset();
2023-04-10 18:12:01 +00:00
const pokeballAtlasKey = getPokeballAtlasKey(this.pokeballType);
this.pokeball = this.scene.addFieldSprite(16, 80, "pb", pokeballAtlasKey);
2023-04-10 18:12:01 +00:00
this.pokeball.setOrigin(0.5, 0.625);
this.scene.field.add(this.pokeball);
this.scene.playSound("pb_throw");
2023-04-10 18:12:01 +00:00
this.scene.time.delayedCall(300, () => {
2023-06-06 14:14:53 +00:00
this.scene.field.moveBelow(this.pokeball as Phaser.GameObjects.GameObject, pokemon);
2023-04-10 18:12:01 +00:00
});
2023-04-10 18:12:01 +00:00
this.scene.tweens.add({
targets: this.pokeball,
x: { value: 236 + fpOffset[0], ease: "Linear" },
y: { value: 16 + fpOffset[1], ease: "Cubic.easeOut" },
2023-04-10 18:12:01 +00:00
duration: 500,
onComplete: () => {
this.pokeball.setTexture("pb", `${pokeballAtlasKey}_opening`);
this.scene.time.delayedCall(17, () => this.pokeball.setTexture("pb", `${pokeballAtlasKey}_open`));
this.scene.playSound("pb_rel");
2023-04-10 18:12:01 +00:00
pokemon.tint(getPokeballTintColor(this.pokeballType));
addPokeballOpenParticles(this.scene, this.pokeball.x, this.pokeball.y, this.pokeballType);
2023-04-10 18:12:01 +00:00
this.scene.tweens.add({
targets: pokemon,
duration: 500,
ease: "Sine.easeIn",
2023-04-10 18:12:01 +00:00
scale: 0.25,
y: 20,
onComplete: () => {
this.pokeball.setTexture("pb", `${pokeballAtlasKey}_opening`);
2023-04-10 18:12:01 +00:00
pokemon.setVisible(false);
this.scene.playSound("pb_catch");
this.scene.time.delayedCall(17, () => this.pokeball.setTexture("pb", `${pokeballAtlasKey}`));
2023-04-10 18:12:01 +00:00
const doShake = () => {
2023-04-10 18:12:01 +00:00
let shakeCount = 0;
const pbX = this.pokeball.x;
const shakeCounter = this.scene.tweens.addCounter({
from: 0,
to: 1,
repeat: 4,
yoyo: true,
ease: "Cubic.easeOut",
2023-04-10 18:12:01 +00:00
duration: 250,
repeatDelay: 500,
onUpdate: t => {
if (shakeCount && shakeCount < 4) {
const value = t.getValue();
const directionMultiplier = shakeCount % 2 === 1 ? 1 : -1;
this.pokeball.setX(pbX + value * 4 * directionMultiplier);
this.pokeball.setAngle(value * 27.5 * directionMultiplier);
}
},
onRepeat: () => {
2023-04-26 20:07:29 +00:00
if (!pokemon.species.isObtainable()) {
shakeCounter.stop();
this.failCatch(shakeCount);
} else if (shakeCount++ < 3) {
if (pokeballMultiplier === -1 || pokemon.randSeedInt(65536) < y) {
this.scene.playSound("pb_move");
} else {
2023-04-10 18:12:01 +00:00
shakeCounter.stop();
2023-04-11 05:31:18 +00:00
this.failCatch(shakeCount);
2023-04-10 18:12:01 +00:00
}
} else {
this.scene.playSound("pb_lock");
addPokeballCaptureStars(this.scene, this.pokeball);
2024-05-23 23:45:04 +00:00
const pbTint = this.scene.add.sprite(this.pokeball.x, this.pokeball.y, "pb", "pb");
pbTint.setOrigin(this.pokeball.originX, this.pokeball.originY);
pbTint.setTintFill(0);
pbTint.setAlpha(0);
this.scene.field.add(pbTint);
this.scene.tweens.add({
targets: pbTint,
alpha: 0.375,
duration: 200,
easing: "Sine.easeOut",
onComplete: () => {
this.scene.tweens.add({
targets: pbTint,
alpha: 0,
duration: 200,
easing: "Sine.easeIn",
onComplete: () => pbTint.destroy()
});
}
});
}
2023-04-10 18:12:01 +00:00
},
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
onComplete: () => {
this.catch();
}
2023-04-10 18:12:01 +00:00
});
};
2023-04-10 18:12:01 +00:00
this.scene.time.delayedCall(250, () => doPokeballBounceAnim(this.scene, this.pokeball, 16, 72, 350, doShake));
}
});
}
});
}
2023-04-11 05:31:18 +00:00
failCatch(shakeCount: integer) {
const pokemon = this.getPokemon();
2023-04-10 18:12:01 +00:00
this.scene.playSound("pb_rel");
2023-04-10 18:12:01 +00:00
pokemon.setY(this.originalY);
if (pokemon.status?.effect !== StatusEffect.SLEEP) {
pokemon.cry(pokemon.getHpRatio() > 0.25 ? undefined : { rate: 0.85 });
}
2023-04-10 18:12:01 +00:00
pokemon.tint(getPokeballTintColor(this.pokeballType));
pokemon.setVisible(true);
pokemon.untint(250, "Sine.easeOut");
2023-04-10 18:12:01 +00:00
const pokeballAtlasKey = getPokeballAtlasKey(this.pokeballType);
this.pokeball.setTexture("pb", `${pokeballAtlasKey}_opening`);
this.scene.time.delayedCall(17, () => this.pokeball.setTexture("pb", `${pokeballAtlasKey}_open`));
2023-04-10 18:12:01 +00:00
this.scene.tweens.add({
targets: pokemon,
duration: 250,
ease: "Sine.easeOut",
2023-04-10 18:12:01 +00:00
scale: 1
});
2024-05-23 23:45:04 +00:00
this.scene.currentBattle.lastUsedPokeball = this.pokeballType;
2023-04-10 18:12:01 +00:00
this.removePb();
this.end();
}
catch() {
const pokemon = this.getPokemon() as EnemyPokemon;
2023-12-06 04:31:34 +00:00
const speciesForm = !pokemon.fusionSpecies ? pokemon.getSpeciesForm() : pokemon.getFusionSpeciesForm();
if (speciesForm.abilityHidden && (pokemon.fusionSpecies ? pokemon.fusionAbilityIndex : pokemon.abilityIndex) === speciesForm.getAbilityCount() - 1) {
this.scene.validateAchv(achvs.HIDDEN_ABILITY);
}
if (pokemon.species.subLegendary) {
this.scene.validateAchv(achvs.CATCH_SUB_LEGENDARY);
}
if (pokemon.species.legendary) {
this.scene.validateAchv(achvs.CATCH_LEGENDARY);
}
if (pokemon.species.mythical) {
this.scene.validateAchv(achvs.CATCH_MYTHICAL);
}
2024-03-08 03:43:15 +00:00
this.scene.pokemonInfoContainer.show(pokemon, true);
this.scene.gameData.updateSpeciesDexIvs(pokemon.species.getRootSpeciesId(true), pokemon.ivs);
2024-05-23 23:45:04 +00:00
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
this.scene.ui.showText(i18next.t("battle:pokemonCaught", { pokemonName: getPokemonNameWithAffix(pokemon) }), null, () => {
2023-04-10 20:52:27 +00:00
const end = () => {
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
this.scene.unshiftPhase(new VictoryPhase(this.scene, this.battlerIndex));
2024-03-08 03:43:15 +00:00
this.scene.pokemonInfoContainer.hide();
2023-04-10 18:12:01 +00:00
this.removePb();
this.end();
2023-04-10 20:52:27 +00:00
};
const removePokemon = () => {
2024-03-17 15:36:19 +00:00
this.scene.addFaintedEnemyScore(pokemon);
2024-02-18 15:53:32 +00:00
this.scene.getPlayerField().filter(p => p.isActive(true)).forEach(playerPokemon => playerPokemon.removeTagsBySourceId(pokemon.id));
pokemon.hp = 0;
pokemon.trySetStatus(StatusEffect.FAINT);
this.scene.clearEnemyHeldItemModifiers();
this.scene.field.remove(pokemon, true);
};
2023-04-11 05:31:18 +00:00
const addToParty = () => {
const newPokemon = pokemon.addToParty(this.pokeballType);
2023-04-20 23:44:56 +00:00
const modifiers = this.scene.findModifiers(m => m instanceof PokemonHeldItemModifier, false);
if (this.scene.getParty().filter(p => p.isShiny()).length === 6) {
this.scene.validateAchv(achvs.SHINY_PARTY);
}
Promise.all(modifiers.map(m => this.scene.addModifier(m, true))).then(() => {
this.scene.updateModifiers(true);
removePokemon();
if (newPokemon) {
2023-04-20 23:44:56 +00:00
newPokemon.loadAssets().then(end);
} else {
2023-04-20 23:44:56 +00:00
end();
}
2023-04-20 23:44:56 +00:00
});
2023-04-11 05:31:18 +00:00
};
Promise.all([pokemon.hideInfo(), this.scene.gameData.setPokemonCaught(pokemon)]).then(() => {
2023-04-18 05:32:26 +00:00
if (this.scene.getParty().length === 6) {
const promptRelease = () => {
this.scene.ui.showText(i18next.t("battle:partyFull", { pokemonName: pokemon.getNameToRender() }), null, () => {
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
this.scene.pokemonInfoContainer.makeRoomForConfirmUi(1, true);
2023-04-18 05:32:26 +00:00
this.scene.ui.setMode(Mode.CONFIRM, () => {
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
const newPokemon = this.scene.addPlayerPokemon(pokemon.species, pokemon.level, pokemon.abilityIndex, pokemon.formIndex, pokemon.gender, pokemon.shiny, pokemon.variant, pokemon.ivs, pokemon.nature, pokemon);
this.scene.ui.setMode(Mode.SUMMARY, newPokemon, 0, SummaryUiMode.DEFAULT, () => {
this.scene.ui.setMode(Mode.MESSAGE).then(() => {
promptRelease();
});
}, false);
}, () => {
this.scene.ui.setMode(Mode.PARTY, PartyUiMode.RELEASE, this.fieldIndex, (slotIndex: integer, _option: PartyOption) => {
2023-04-18 05:32:26 +00:00
this.scene.ui.setMode(Mode.MESSAGE).then(() => {
if (slotIndex < 6) {
2023-04-18 05:32:26 +00:00
addToParty();
} else {
2023-04-18 05:32:26 +00:00
promptRelease();
}
2023-04-18 05:32:26 +00:00
});
2023-04-11 05:31:18 +00:00
});
2023-04-18 05:32:26 +00:00
}, () => {
this.scene.ui.setMode(Mode.MESSAGE).then(() => {
removePokemon();
end();
});
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
}, "fullParty");
2023-04-11 05:31:18 +00:00
});
2023-04-18 05:32:26 +00:00
};
promptRelease();
} else {
2023-04-18 05:32:26 +00:00
addToParty();
}
2023-04-18 05:32:26 +00:00
});
2023-04-10 18:12:01 +00:00
}, 0, true);
}
removePb() {
this.scene.tweens.add({
targets: this.pokeball,
duration: 250,
delay: 250,
ease: "Sine.easeIn",
2023-04-10 18:12:01 +00:00
alpha: 0,
onComplete: () => this.pokeball.destroy()
});
}
}
export class AttemptRunPhase extends PokemonPhase {
constructor(scene: BattleScene, fieldIndex: integer) {
super(scene, fieldIndex);
2023-05-07 21:05:19 +00:00
}
start() {
super.start();
const playerPokemon = this.getPokemon();
const enemyField = this.scene.getEnemyField();
const enemySpeed = enemyField.reduce((total: integer, enemyPokemon: Pokemon) => total + enemyPokemon.getStat(Stat.SPD), 0) / enemyField.length;
2023-05-07 21:05:19 +00:00
2023-12-22 22:08:37 +00:00
const escapeChance = new Utils.IntegerHolder((((playerPokemon.getStat(Stat.SPD) * 128) / enemySpeed) + (30 * this.scene.currentBattle.escapeAttempts++)) % 256);
applyAbAttrs(RunSuccessAbAttr, playerPokemon, null, escapeChance);
2023-05-07 21:05:19 +00:00
if (playerPokemon.randSeedInt(256) < escapeChance.value) {
this.scene.playSound("flee");
this.scene.queueMessage(i18next.t("battle:runAwaySuccess"), null, true, 500);
2024-05-23 23:45:04 +00:00
2023-05-07 21:05:19 +00:00
this.scene.tweens.add({
targets: [this.scene.arenaEnemy, enemyField].flat(),
2023-05-07 21:05:19 +00:00
alpha: 0,
duration: 250,
ease: "Sine.easeIn",
2023-10-31 18:09:33 +00:00
onComplete: () => enemyField.forEach(enemyPokemon => enemyPokemon.destroy())
2023-05-07 21:05:19 +00:00
});
this.scene.clearEnemyHeldItemModifiers();
2023-06-01 17:54:52 +00:00
enemyField.forEach(enemyPokemon => {
2023-10-31 18:09:33 +00:00
enemyPokemon.hideInfo().then(() => enemyPokemon.destroy());
2023-06-01 17:54:52 +00:00
enemyPokemon.hp = 0;
2023-11-04 04:32:12 +00:00
enemyPokemon.trySetStatus(StatusEffect.FAINT);
2023-06-01 17:54:52 +00:00
});
2023-05-07 21:05:19 +00:00
this.scene.pushPhase(new BattleEndPhase(this.scene));
this.scene.pushPhase(new NewBattlePhase(this.scene));
} else {
this.scene.queueMessage(i18next.t("battle:runAwayCannotEscape"), null, true, 500);
}
2023-05-07 21:05:19 +00:00
this.end();
}
}
2023-04-10 18:12:01 +00:00
export class SelectModifierPhase extends BattlePhase {
private rerollCount: integer;
private modifierTiers: ModifierTier[];
constructor(scene: BattleScene, rerollCount: integer = 0, modifierTiers?: ModifierTier[]) {
2023-04-10 18:12:01 +00:00
super(scene);
this.rerollCount = rerollCount;
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.modifierTiers = modifierTiers!; // TODO: is this bang correct?
2023-04-10 18:12:01 +00:00
}
start() {
super.start();
if (!this.rerollCount) {
this.updateSeed();
2024-05-30 17:45:30 +00:00
} else {
this.scene.reroll = false;
}
2023-04-10 18:12:01 +00:00
const party = this.scene.getParty();
regenerateModifierPoolThresholds(party, this.getPoolType(), this.rerollCount);
2023-04-10 18:12:01 +00:00
const modifierCount = new Utils.IntegerHolder(3);
if (this.isPlayer()) {
this.scene.applyModifiers(ExtraModifierModifier, true, modifierCount);
}
const typeOptions: ModifierTypeOption[] = this.getModifierTypeOptions(modifierCount.value);
2023-04-10 18:12:01 +00:00
const modifierSelectCallback = (rowCursor: integer, cursor: integer) => {
if (rowCursor < 0 || cursor < 0) {
this.scene.ui.showText(i18next.t("battle:skipItemQuestion"), null, () => {
2024-03-24 01:03:00 +00:00
this.scene.ui.setOverlayMode(Mode.CONFIRM, () => {
this.scene.ui.revertMode();
this.scene.ui.setMode(Mode.MESSAGE);
super.end();
}, () => this.scene.ui.setMode(Mode.MODIFIER_SELECT, this.isPlayer(), typeOptions, modifierSelectCallback, this.getRerollCost(typeOptions, this.scene.lockModifierTiers)));
2024-03-24 01:03:00 +00:00
});
return false;
2023-04-10 18:12:01 +00:00
}
let modifierType: ModifierType;
let cost: integer;
switch (rowCursor) {
case 0:
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
switch (cursor) {
case 0:
const rerollCost = this.getRerollCost(typeOptions, this.scene.lockModifierTiers);
if (this.scene.money < rerollCost) {
this.scene.ui.playError();
return false;
} else {
2024-05-30 17:45:30 +00:00
this.scene.reroll = true;
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
this.scene.unshiftPhase(new SelectModifierPhase(this.scene, this.rerollCount + 1, typeOptions.map(o => o.type?.tier).filter(t => t !== undefined) as ModifierTier[]));
this.scene.ui.clearText();
this.scene.ui.setMode(Mode.MESSAGE).then(() => super.end());
if (!Overrides.WAIVE_ROLL_FEE_OVERRIDE) {
this.scene.money -= rerollCost;
this.scene.updateMoneyText();
this.scene.animateMoneyChanged(false);
}
this.scene.playSound("buy");
}
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
break;
case 1:
this.scene.ui.setModeWithoutClear(Mode.PARTY, PartyUiMode.MODIFIER_TRANSFER, -1, (fromSlotIndex: integer, itemIndex: integer, itemQuantity: integer, toSlotIndex: integer) => {
if (toSlotIndex !== undefined && fromSlotIndex < 6 && toSlotIndex < 6 && fromSlotIndex !== toSlotIndex && itemIndex > -1) {
const itemModifiers = this.scene.findModifiers(m => m instanceof PokemonHeldItemModifier
Beta Merge 27/07 (#3141) * feat: Add Google and Discord login functionality feat: Add link to Discord in menu UI feat: Add Discord and Google login functionality Add container around discord and google icons refactor: Update environment variable names for Discord and Google client IDs feat: Add "Or use" translation for login options in multiple languages feat: Update menu UI translations for multiple languages Code review fixes refactor: Update Discord and Google client IDs in environment variables * refactor: Add missing properties to initLoggedInUser function * Update src/locales/de/menu-ui-handler.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * make i18n debugging an optional env setting this also reduces output noise in tests * set development default also to "0" * fix inaccurate docs for TypeImmunityAbAttr (#2957) * chore: Add beta branch to GitHub Actions tests workflow * chore: Add beta branch to GitHub Actions linter and gh-pages workflow * Update src/locales/ko/menu-ui-handler.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Update src/locales/ko/menu.ts Co-authored-by: lnuvy <lnuvy.code@gmail.com> * Localization(pt): translated bgm-name.ts (#2955) * Localization(pt): translated bgm-name.ts * fix * update VITE_I18N_DEBUG in .env files * chore: Update environment variables for beta and production environments * chore: Add beta branch to GitHub Actions deploy workflow * Hardcoded Pokemon should have proper names (#2941) * Refactor challenges and add fresh start (#2963) * [Balance] Update many TM learnsets (#2879) * Update TMs for more Indigo Disk changes * Fix typo, more Stored Power * Refactor challenges and add fresh start (#2964) * Refactor challenges and add fresh start * Add achievement for fresh start challenge * [Bug] Fix off-by-one error in damage calc (#2970) * Fix random damage roll to be 85-100% instead of 85-99% * Update battle.test.ts to reflect the fix * [Bug] Grounded on Terrain fixes (#2969) * [Help] [Move/Bug] Patches Psychic Terrain applicability edge cases Was cancelling moves even if targeted mons weren't on the terrain. * [Bug `]Pokemon.isGrounded` does not exist Replaced with `Pokemon.isGrounded()`, which does. * [Bug] Psychic Terrain priority move cancel ignoring ungrounded * [Bug] Semi-invulnerable should not be grounded * Update game-stats-ui-handler.ts (italian) (#2965) * [Bugfix] Fix a bug during bgm-bar initialization (#2822) * Prevent sizing error * Make reboot not necessary for show BGM * Makes the BGM Bar active by default + It had originally been decided that this would not be active by default because it was to be displayed outside the pause menu, but since its behavior has changed between this decision and its integration, the default deactivation is no longer necessary * [Mirror][Localization] Translate game victory sentences #2254 (#2906) * Translate forgotten sentences on phases * Translate to de forgotten sentences on phases * Translate to es forgotten sentences on phases * Translate to fr forgotten sentences on phases * Translate to it forgotten sentences on phases * Translate to ko forgotten sentences on phases * Translate to pt br forgotten sentences on phases * Translate to zh cn forgotten sentences on phases * Translate to zh tw forgotten sentences on phases * remove duplicate message * remove duplicate message * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update battle.ts [Localization(it)] * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * [Mirror][Localization] Translate summary #2336 (#2907) * Translate pokemon summary * Translate pokemon summary to fr * Translate pokemon summary to de * Translate pokemon summary to es * Translate pokemon summary to it * Translate pokemon summary to ko * Translate pokemon summary to pt br * Translate pokemon summary to zh cn * Translate pokemon summary to zh tw * Fix import * Update partially for en and ko * Update interface name for en * Merge trainerLabel&Text and calculate typeLabel width * Update src/locales/es/pokemon-summary.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Apply translations key to all languages with interface TranslationEtries * Update ko/translationKey of status * Update ko/translationKey of pokemonInfo * Update de/translationKeys of memostring and metFragment * Update de/translationKeys of memostring and metFragment 2 * Update src/locales/ko/pokemon-summary.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/pokemon-summary.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/pokemon-summary.ts * Update src/locales/pt_BR/pokemon-summary.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update pokemon-summary.ts [Localization(it)] * remove unused code * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/pokemon-summary.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/pokemon-summary.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * [Localization] Localization arena flyout (Active Battle Effects) (#2932) * localizing Active Battle Effects (working) * Localize Active Battle Effects * Change return value * Modify arena terrain desc * Update src/locales/zh_CN/arena-flyout.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/de/arena-flyout.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/arena-flyout.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update arena-flyout.ts (IT) * Update src/locales/pt_BR/arena-flyout.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/arena-flyout.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Change util function name --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Arxxer <javiptn7@gmail.com> * This should prevent gym leaders appear as doubles (marnie & piers) when they arent fixed battles (#2904) * The stat messages can now be plural (#2600) * The stat messages are now plural * "And" can now be localized * Revert Override * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/de/battle.ts * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/data/battle-stat.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Changed the way the multiple is handeled to use the i18n way * Missed one file * Apply suggestions from code review * Apply suggestions from code review * Changed the tests so they work now with the i18n hting * Fixed some other tests (chinese still makes problems... * Fix tests for chinese * Tests * Update src/test/battle-stat.spec.ts * Update src/locales/zh_CN/battle.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Enhancement][QoL] Add option to adjust shop overlay opacity (#2622) * add option to adjust shop overlay opacity * add localization * fix bug * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * update default value * update setting values * re-add value 10 * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/es/settings.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Update settings.ts --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Bug] Fix battler tags lapsing at incorrect times (#2944) * Fix battler tags lapsing at incorrect times * Document FlinchedTag * Update French pokemon-summary.ts (#2976) * [Test] Prevent tests from running if overrides are different from the default values (#2110) * mock default overrides in test setup * change beforeEach to beforeALl * move some more enums into the enums directory * replace modules that import i18n into overrides with modules that don't * add pre tests and update vitest configs, scripts * replace tabs with spaces * fix vitest server port overlap warning * add missing overrides and clean up workspace config * change test name * include spec files in main test suite * [QoL] Highlight targets of multitarget moves instead of immediate execution (#2863) * show targets for move targeting multiple pokemon * dont allow selecting target if multiple * fix targeting * cleanup * more cleanup * only highlight targets is move is not status * fix tests failing * fix tests * change "immediately" to "auto" * nevermind just remove auto * remove status move condition * [Refactor] rewrite applyAbAttrsInternal to use an iterator. (#1832) * initial rewrite of applyAbAttrsInternal * clean up applyAbAttrsInternal * remove the await because it wraps non Promises in a promise * add TODO comment about promises * fix broken costar test, hopefully * Update typescript and typedoc (#2988) * update typescript and typedoc to latest versions * forgot to add the package-lock * add fixes for breaking type gen * update workflow (#2989) * [Qol/Balance] Dynamax cannon tweak (#2540) * Dynamax Cannon fix * Update src/locales/fr/move.ts Added fr translation. Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/move.ts Adding an important missing precision in French description Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German locale commit. Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/move.ts Chinese locale commit, checked by a native speaker Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/move.ts Korean locale added Co-authored-by: returntoice <dieandbecome@gmail.com> * fixed trailing space in Chinese locale * added es locale * Different Dynamax Cannon fix. This one is the one * Dynamax Cannon fix localisations * Update src/locales/fr/move.ts Added fr locale Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/move.ts German translation ^^ Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/move.ts pt-BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/de/move.ts Eslint fix, good catch @Enoch Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move.ts Korean locale ^^ Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Update src/locales/zh_CN/move.ts zh_CN locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/move.ts zh_TW locale Co-authored-by: RimKnight <rimknight852@gmail.com> * Update move.ts linting mistake due to how my comment was written * Update move.ts linting mistake due to how my comment was written * Update move.ts [Localization(it)] * WIP test * WIP test part 2 * [Test] Add Unit Tests for Dynamax Cannon * removed some unnecessary cases in the test to reduce testing overhead * Update src/locales/ko/move.ts Updated kr locale Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Test] Adjust Unit Tests for Dynamax Cannon --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> * [Test] Fix/Extend Unit Test for Hard Press (#2992) * [Test] Update tests to enable no-crits override (#2971) * Update tests to enable no-crits override * Rename variable maxHP to initialHP * [Localization]Localized move-trigger text (#2913) * [Localization]Localized move-trigger text * [Localization]Localized zh-cn move-trigger text * [Localization]fix typo * [Localization]fix typo * Update src/locales/pt_BR/move-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Localization]add pokemonName to move-trigger.ts * [Localization]add pokemonName to move-trigger.ts * Update zh_TW move-trigger.ts * Update zh_CN move-trigger.ts * Update move.ts * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/move-trigger.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update move-trigger.ts * Update src/locales/de/move-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization]add affix to target pokemon names * Update src/locales/fr/move-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * localized type --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * [Bug] Fix description of rare candy to have proper amount of level (#2903) * [Bug] Fix description of rare candy to have proper amount of level * Update en locales * Add locales * Add locales * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/de/modifier-type.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/modifier-type.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/ko/modifier-type.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/modifier-type.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/modifier-type.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update modifier-type.ts (IT) * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> * Update src/locales/es/modifier-type.ts Co-authored-by: Arxxer <javiptn7@gmail.com> --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Arxxer <javiptn7@gmail.com> * move status effect enum into separate file (#2998) * add .env.test (#2997) block i18n debug output by default * [QoL] Create default overrides class and export that with custom overrides (#2999) * Create default overrides class and export that with custom overrides * add comment to mock import and replace typecast with type narrowing * change modifier override type to pick keys from modifierTypes * [Feature][FUN] add breedersInSpace splash message (#2631) * add spaceBreeder splash message * fix typo (whops) * Add pt_BR translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * replace text & key with breedersInSpace * add french tanslation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * remove obsolete array split in splash-messages.ts * Update src/locales/pt_BR/splash-messages.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/es/splash-messages.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update splash-messages.ts (Italian) * Update src/locales/zh_CN/splash-messages.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/splash-messages.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * [Enhancement] Pokemon generation number tooltip (#2642) * Create tooltip to show Pokemon generation * Add option to toggle generation tooltip * Use roman numeral for generation tooltip * Revert "Add option to toggle generation tooltip" This reverts commit 414b2366fc55c5642f8858d6f4854aa62c4caf60. * Update src/locales/de/battle-info.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/fr/battle-info.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle-info.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/zh_TW/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle-info.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/ko/battle-info.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update battle-info.ts (IT) --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * [Beta] Updating the manage data->unlock all option to work with all abilities, natures, forms and passives (#2967) * Updated code to allow user to unlock all pokemon from the manage data menu option * Added code to Utils to allow it to check for a beta env, and hid the unlock all code behind that. This should stop it from being accessed in prod envs * Updated another section to be locked behind beta check, and also updated the everything.prsv to have everything unlocked going forward * Fixed some code reviews * [Bug] vite port (for development) (#3003) * make vite-port configurable and make it default 8000 * add retries for `does not trigger by non damage moves` test * feat: Update isBeta check in utils.ts to use import.meta.env.MODE The current implementation of the isBeta check in utils.ts is using import.meta.env.DEV, which gives the same value for both beta and dev environments. This commit updates the check to use import.meta.env.MODE === "beta" to accurately determine if the environment is beta. This ensures that the unlock all code is only accessible in the beta environment and not in production environments. * refactor: Update trainerId and secretId in game data This commit updates the `trainerId` and `secretId` properties in the `GameData` class. The values are replaced with the corresponding values from the `this.trainerId` and `this.secretId` variables. This change ensures that the `trainerId` and `secretId` are correctly updated in the game data. * Adds bg glow behind starters with unlocked passives (#2497) * [Localization] Localize missed things in battlers-tag.ts (#3004) * Localize missed things in battlers-tag * Change orders of configs * Add missed phase * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_TW/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> * Update src/locales/zh_CN/battler-tags.ts Co-authored-by: RimKnight <rimknight852@gmail.com> --------- Co-authored-by: RimKnight <rimknight852@gmail.com> * [Feature] Fully implement Octolock (#2985) * implement octolock * Add tests * [Bug] Fix import of overrides in a test (#3009) * [BUG] Fixes Sketch copying the first move used by the opponent instead of the last (#2759) * Changes getMoveHistory to getLastXMoves to fix sketch copying first move used instead of last * Optimizes move search and early return * Reverts check for virtual moves * [Bug] Making FormChangeItems Untransferrable (#2695) * Made FormChangeItems untransferrable. Replaced getTransferrable() * Made isTransferrable readonly. Removed unnecessary 'm as PokemonHeldItemModifier'. * [Bug] Fix Clear terrains upon Trainer Battle (#2027) * Clear terrains upon Trainer Battle * Adjusted comment * Fix item reward overrides going out of bounds (#3012) * [Localization] Localize Berry Heal message (#2996) * Localize berry heal message (HP/PP) * Change location of translation * conflict resolve * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/zh_CN/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/pt_BR/battle.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update battle.ts (Berries ITALIAN) --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Adds a check to the bgm-bar display to prevent it from being displayed in case of an empty value (#3007) * [Sprite] Improves Corviknight Palette usage (#3020) * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Sprite] Compress Corviknight exp * [Beta][Localization] Update French battler-tags.ts and battle.ts (#3015) * Update French battler-tags.ts * Update battle.ts * [Bug] Fix Lock-On and Mind Reader not working on the first turn (#3001) * [Bug] Struggle Recoil should ignore Magic Guard (#3017) * Drafted testable conditions for Magic Guard * Weather Test * Update src/test/abilities/magic_guard.test.ts InnerThunder Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * Implemented checks for poison/toxic/burn * Added tests for recoil moves and volatile status * Updated Rock Head, Magic Guard, and Reckless interactions with Struggle * Removed stray file * Fixed Typedoc errors * Implemented innerthunder's feedback --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> * [Enhancement] Decouple move power calculation from Pokemon.apply(), Fixes Power Spot & Battery not boosting ally's move (#2984) * refactor power calc, fix battery & power spot * fix hard press unit test * fix hard press * refactor tests * use sypOn hp instead * rename method * cleanup tests * improve tests * use slow vs fast pokemon * fix steely spirit test * fix steely spirit for real this time * remove unnecessary test * address pr feedback * add removed code * [QoL] Offset the status indicator to keep pokeball in view (#2966) * Offset the status indicator to keep pokeball in view * Only use offsetX when the Pokemon is the enemy * Adjust position to accomodate boss health bar * [Bug] Fix to epic shiny Yungoos icon (#2991) (#3016) Fixed a floating pixel in epic shiny Yungoos' icon. Caused by Mimikyu's epic shiny sprite being placed too high on the sprite sheet. Moved Mimikyu's sprite down and updated json to reflect the change. * [Localization(ko)] Change line-break position of ghost type curse add message (#3022) * Revert "[Localization]Localized move-trigger text (#2913)" (#3026) This reverts commit 39bdfea0c8b33a759db760809d6488d825b510e2. * [Localization(ko)] Fixed typo in Bertha's dialogue (#3025) * [Bug] Prevent fixed-damage and OHKO moves from being modified by damage-reducing abilities (#2703) * ReceivedMoveDamageMultiplierAbAttr patch: WIP refactored damage calculation, reordered ReceivedMoveDamageMultiplierAbAttr to avoid issues with fixed damage and OHKO moves, stubbed unit tests for dragon rage (fixed damage) and fissure (OHKO) * ReceivedMoveDamageMultiplierAbAttr patch: commented concerns regarding EnemyDamageBooster/ReducerModifier for others' reference in WIP branch * ReceivedMoveDamageMultiplierAbAttr patch: reordered ReceivedMoveDamageMultiplierAbAttr and EnemyDamageBooster/ReducerModifier to not trigger for fixed damage and OHKO moves, completed relevant tests for dragon rage and fissure * ReceivedMoveDamageMultiplierAbAttr patch: removed newline * ReceivedMoveDamageMultiplierAbAttr patch: in the unit test, extracted hard-coded Dragon Rage damage to a variable * ReceivedMoveDamageMultiplierAbAttr patch: naming consistency * ReceivedMoveDamageMultiplierAbAttr patch: replaced awaiting DamagePhase with TurnEndPhase as the former assumes damage will be done * ReceivedMoveDamageMultiplierAbAttr patch: removed redundant overrides in Fissure tests * ReceivedMoveDamageMultiplierAbAttr patch: tests: refactored crit removal, removed berries, fixed bug associated with Porygon sometimes getting Trace and copying the opponent's ability, which would override the manual ability override * Fixed unit tests * Added a comment and cleaned up an existing one * [Localization] Brought german localization up to date (#3010) * Fixed errors in the german localization * Fresh Start Challenge * Update src/locales/de/move-trigger.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Apply suggestions from code review --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Remove redundant damage number popups (#3024) * Remove magic number from Belly Drum's attr * Remove redundant damage number popup * Fix merge issue and remove another duplicate damage number instance * [Move] Implements Conversion 2 (#2943) * Creates function to get type resistances, implements conversion 2 * Removes unimplemented tag, adds condition for move history to exist * Cleans up type selection, creates i18n entries for typeChanged * Uses typeChanged i18n in Conversion move * More detailed docs, early return with stellar/unknown type * Adds note that it wont track type-changing moves properly * Rephrases doc description, adds partial since it can't track type-changing moves * Updates localization, removes typeChanged entry to use move-trigger entry * Missed locale de entry in last commit * Adds comment for reason of .partial() * Fixes localization error due to revert, removes improper merge conflict from prior commit * [BUG] Fixes bug with Metronome freezing the game (#2819) * Tests MovePhase with new PokemonMove instead of moveset search * Accounts for metronome call on charging moves * Update comment in ChargeAttr to be clearer * Add missing passive background graphic for legacy UI Relating to #2497 , this adds an identical graphic to the legacy UI files, as it will show up as a missing texture otherwise. * [Localization] Localize ability messages in ability.ts (trigger, apply...) (#2972) * localize ability messages * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Modify parameter name, fix eslint * Korean Translation, modify some wrong param * Add missed message * Update src/locales/de/ability-trigger.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update ability-trigger.ts (Partial) (Italian) * Localize type name * Localize type name > Libero, Protean * param bug fix * Update src/data/ability.ts * Update zh-cn * Update ability-trigger.ts (Partial part 2, still not completed) (Italian) * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/pt_BR/ability-trigger.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/fr/ability-trigger.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> --------- Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update egg.ts (italian) (#3038) * [Sprite] Revert Larvesta, fixing stray pixels (#3042) * [Sprite] Remove normal Larvesta stray pixels Taken from original commit * [Sprite] Revert shiny Larvesta stray pixels Taken from original commit * [Sprite] Match variant Larvesta colours * [Bug] Fix level 100 moves being skipped if leveled past 100 (#3040) * [Bug][Fix][Surf][Muddy Water][Sludge Wave][Animation] Added image to move animations. (#3044) * Update muddy-water.json * Update sludge-wave.json * Update surf.json * [Sprite] Fix Cofagrigus sprite (#3045) * Fix Cofagrigus sprite * Base sprite fix * Created json variant file... manually * Fix FR typo (#3051) * [Beta][Localization] Update Portuguese battler-tags.ts and battle.ts (#3050) * [Music/BGM] Fix bgm file & loop for battle_rival (#3053) * stop loading pride-update banner (#3057) * [Item] Add Scope Lens and Leek (#2666) * [Item] Add Scope Lens and Leek * Add Entry to pt_BR * Localize for pt_BR Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Fix & Clean Unit Tests --------- Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * [Music/BGM] New music added for the "Slum" biome, composed by Andr06 (#3000) * Replacement of the BGM in the slum biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SLUM' * [Bug] implemented multi target damage penalty (#2329) * fix: damage multiplier by the number of targets * fix: used actual number value rather than the number holder * test: added unit test for counting targets * multi-target: fixed names of the unit tests. * test: simple-test changes * test: changed multi-target test code * test: testing damage decreasement * test: multi-target test fix * resolved conflicts in test --------- Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> * [BUG] Uturn faint switch bug fix (#2980) * reordering adding switch phases for u-turn * reverting some temp changes * generalizing function * adding PR suggestions * nit indenting * [Sprite] Remove extra Oinkologne sprites (#3067) * Delete public/images/pokemon/female/916.png * Delete public/images/pokemon/exp/female/916.json * Delete public/images/pokemon/exp/female/916.png * Delete public/images/pokemon/female/916.json * [Sprite] Mega Mewtwo sprite fixes (#3065) * [Sprite] Add static epic Mega Mewtwo Y Colours taken from exp, as consistent/exp rare backs share palettes. * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Fix transparent pixels on Mega Mewtwo X * [Sprite] Add static epic Mega Mewtwo Y Now exists, and is a paletteswap * [Music/BGM] New music added for the "Sea" biome, composed by Andr06 (#3063) * Replacement of the BGM in the sea biome (by Andr06) * Modification of BGM credits in README.md * Replacement of the BGM name by the title chosen by its composer in all languages * Update BGM loop point for biome 'SEA' * [Balance] Add 12 new TMs and remove 3 (#2733) * Added Counter TM * Counter, Aqua Tail, Gastro Acid, Pluck, Secret Power, Aurora Veil, Incinerate * Placed TMs in proper order, added to pool * Add Secret Power to the pool * Add TM for Synthesis * Covet, Heal Bell, PUPunch, Recycle, Volt Tackle, Worry Seed * Remove species specific TMs * Remove Secret Power TM until implementation * [Refactor/Test] Update Dynamax Cannon Unit Tests (#3074) * [Refactor/Test] Update Dynamax Cannon Unit Tests * Adjust Test Names * fix: update SameSite attribute in setCookie function to None * fix: update SameSite attribute in setCookie function to Strict * feat: Add prompt=none to Discord OAuth authorization URL * fix: Remove unnecessary cookie setting in LoginPhase and MenuUiHandler * feat: Improve cookie handling in getCookie function * feat: Delete duplicate cookies with the same name in getCookie function * [Localization] Add minor Korean translations to ability-trigger file (trace) (#3093) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * modify trace trigger description (refered from official translation) modify trace trigger description (refered from official translation) * Fix broken `multi_target` tests and remove RNG-based failures (#3095) * Prevent RNG from breaking the Quick Draw tests (#3096) * Make EXP boosting items stack additively and not multiplicatively (#3094) Fixes #2040 * [Bug] Fixes Encore bug with multi-target moves missing (#3060) * Pushes move history even when multi target move misses * Move pushMoveHistory out of Move Pending condition * Add remaining relearn moves (#2894) * [Enhancement] Decouple move accuracy and accuracy multiplier calculation from phases.ts (#2899) * refactor accuracy calc * update doc * move accuracy multiplier calculation outside phases * update wonder skin unit test * rename method * add docs * add unit tests * address feedback * rename method * fix imports * improve tests * add test for ohko move accuracy * [Sprite] Fix a number of sprite issues including the Zubat line, Goldeen, Golett, Dudunsparce, H-Sneasel, Garchomp, Sylveon, Marshadow (#3069) * Batfix, Goldeen, Chomp, Golett, genies * Fix Dudunsparce using Reborn shiny backsprite for whatever reason * Fix female Hisuian Sneasel missing variants * Marshadow epic front and Zenith, Sylveon back * Fix Zubat line back sprite inconsistencies * Fix Noivern shiny back * [Move] Finish implementation of Glaive Rush (#2720) * Finish implementation of Glaive Rush * Fix test RNG * Add code/test for Multi-Lens interaction * Fix off-by-one error in test caused by rounding issues * Update for code changes * Fix BattlerTag name * [Bug] fix not changing moveset after add to starter #1932 (#2396) * [Bug] Enemies can properly use stuff cheeks (#3090) * [Feature] Added pokemon nicknames/renaming (#2570) * Added basic temp renaming * Made nickname persistant after reloading * Localization and cancel button * Fixed instant rename on active pokemon * Small bugfix to prevent console errors * Changed logic to use the new nickname field. Replaced most .name with getNameToRender() for display. * Changed evolution message. Removed log messagesc * Added localization keys for other languages * Removed empty lines * French translation Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Chinese translation Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Portuguese (Brazil) translation Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Korean translation Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update menu.ts * Update menu.ts [Localization(it)] * Changed most .getNameToRender() instance to getPokemonNameWithAffix() * Changed wild encounter messages back to just use the name without affix. * Added localization for the party ui rename selection * Escaping nickname characters to support all characters * Better Error handling * Update src/field/pokemon.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Allow Necrozma forms to play their special music (#3054) * [BUG] fixing multi-hit and move messages on faint (#2981) * fixing order of messages, scences, to render messages before fainting * updated fix for effectiveness text rendering order for multi hit moves * fixing messages not appearing for multi-hit moves on faint * updated multi-hit condition) * fixing PR conflicts * adding comments and FaintPhase setPhaseQueueSplice bug, fixing overrides merge conflict * writing better comments * removing space diff in overrides * adding fainting check for self damage moves * emergency fixing broken last commit * additional comments for multi-hit problem * updating comments, jsdoc style * fixing linter, destiny bond errors * splitting up varaible comments to be in JSDoc format * fixing tests and merge mistakes * adding rendering of multihit moves that only hit once * fixing comment formatting_tabs and spaces --------- Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> * [Bug] Sheer Force/Serene Grace Flyout Bugfix (#2496) * Disable Show Ability for Serene Grace and Sheer Force when opponent calculates targetBenefitScore * Add comment and definition to argument * [Visual] Achievement icons (#2617) * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas * Update item atlas again This time, after merging main into the PR. * [Sprite] Show Partner Eevee variants (#3097) * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants Taken from non-partner Eevee * [Sprite] Show Partner Eevee variants * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Allow Necrozma forms to play their special music (#3054) * Allow Necrozma forms to play their special music (#3054) * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * [Feature] replace bug-report template with form (#2772) * replace bug-report template with form * update bug_report.yml * add palceholders for data & session file * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Resolving merge conflict * Updated texture files? I think * Changed image names and added new localizations for syntax * Removed unused ribbons * Update item atlas * Update item atlas again This time, after merging main into the PR. * Merged with beta's new items * Fixed typedoc issues * Removing localizations * MonoGen Ribbons added * Text Changes to MonoGen Challenges * Item Texture Files * MonoGen Ribbons added * Updated texture files? I think * Changed image names and added new localizations for syntax * Fixed typedoc issues * Revert "Text Changes to MonoGen Challenges" This reverts commit 3bf79acc6a797b0e28e68e113e644b30096ea9ce. * Please fix this. * Revert "[Feature] replace bug-report template with form (#2772)" This reverts commit aa69b107778123b2173bee6130e5d172d201b637. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Re-add changes accidentally deleted by #2617 * Fix some broken images in item atlas & achievement Fixed the broken sprites in the item atlas, and fixed the Baton Pass achievement to use the Baton item now (it was broken by the Leek being renamed). Also resized the Baton item image to 32*32, like all the other items. * fix: Remove unnecessary cookie setting in removeCookie function * fix: Update removeCookie function to use Max-Age=-1 instead of Expires header The removeCookie function was updated to use the Max-Age=-1 attribute instead of setting the Expires header to a past date. This change ensures that the cookie is immediately expired when removed, preventing any potential login loops. Additionally, a legacy cookie without a domain was added to handle older cookies. This commit resolves the unnecessary cookie setting in the removeCookie function. * [QoL] Starter UI selection update to allow removing specific pokemon from party (#1983) * Initial commits with logic to remove starters if they're in your party. Still need to make it work so that the starter selection cursor disappears when a starter is unselected * Updated code to be able to remove pokemon, including the side icons and cursor locations * Fixed popstarter to work with any index * Updating code to allow navigation of starter icons * Updating code to allow navigation of party starter icons * Updaing navigation of party icons * Updated logic to fix incorrect icon in top left of pokemon options when navigating the starter icons * Updated logic to include the ability to navigate and interact with the starter icons * Forgot to push the actual starter-select-ui-handler. Might be a bit hard to test things out without that :) * Removed some unnecessary comments * Fixed small bug with not being able to move from the far right to the gen selection when the starter icons were empty * Updated code to not be using a method to generate the party menu and made it more like it used to be. This should help with merge conflicts in the future * I committed the merged version but forgot to make the starter-select-ui-handler staged after making the changes * Accidentally broke challenges that had a specific typing requirement with last commit. This should fix it * Changed how navigation worked based on popular demand * Fixed code review comments * Accidentally left in a whole block of commented code. Intentionally removing it now * Started adding logic for mono type challenge runs to not break the game if the user tries to start a run with an invalid party * Updated the text to say the party is invalid * Updated logic to make invalid pokemon greyed out when no valid pokemon are in your party * Added comments on some code * Updated locales to include the key for trying to start with invalid parties during a challenge * Fixed some code from a bad merge where a challenge related param that was previously a number now needed to be a boolean and wasn't * Removed comment as per review * [Bug] Ability changing on evolution fix (#2995) * Prevent Pokemon with their second ability from evolving into their HA * Add check for fusions too * Localization(pt): Updated move.ts (#3078) * Localization(pt): Updated move.ts and fixed King's Shield * more fixes * [Bug] Enemy pokemon's Harvest creates berry icons on the player's side when triggered (#3077) * [Bug] Fix hustle not applying attack boost (#3101) * [Sprite] Mega Latis using opposite's eye colour (#3102) * [Sprite] Mega Latis using opposite eyes Taken from counterpart Lati * [Sprite] Update Mega Latios eyes * [Sprite] Update Mega Latias eyes * [Sprite] Mega Latias duplicated palette value Colour taken from non-exp Mega Latias * [Bug] Fix Thousand Arrows not hitting targets under the effects of Magnet Rise (#3100) * Fix Thousand Arrows not hitting through Magnet Rise * Add integration test for Thousand Arrows vs. Magnet Rise * ESLint * Remove unnecessary checks in integration tests * [Move] Aeroblast is a wind move (#3109) * Hardcoded Pokemon should have proper names * Aeroblast is a wind move * [Refactor] Replaces the single and double battles overrides with a single override (#3104) `SINGLE_BATTLE_OVERRIDE` and `DOUBLE_BATTLE_OVERRIDE` are now `BATTLE_TYPE` Also updates all uses of the old overrides with the new one * fix `Overrides` capitalization (#3111) * [Balance] More TM fixes (#3081) * More TM fixes * Leaf Storm * Removed sexy matcha * [Refactor] Code readability update (#3085) * Clean up/clarify `src/field/pokemon.ts` a bit Code provided by DerTapp on Discord * Update `PokemonSpeciesForm.getAbilityCount()` * Update `PokemonSpeciesForm.getAbility()` * Add explicit `Abilities.NONE` checks * Add tests * Add jsdoc and implement test suggestions * [Move] Implement Stockpile, Spit Up, Swallow (#2960) * feat: Implement Stockpile, Spit Up, Swallow * chore: Minor, likely unnecessary null checks * feat: Localization * Undo non-English localizations (unsure if they went through proper channels) * ko localization from @EnochG1 Co-authored-by: Enoch <enoch.jwsong@gmail.com> * linting fix * add tests, tiny (non-functional) tweaks * Remove unnecessary cast * Update src/data/move.ts (oops) * remove some unnecessary comments, rename something for clarity --------- Co-authored-by: Enoch <enoch.jwsong@gmail.com> * [Bug] Remove ability swap code in `PlayerPokemon.evolve()` (#3113) * [Test] Add test for rollout move (#3114) * add test for rollout move Co-authored-by: Zach Day <zachdayz@gmail.com> * fix tests still using `SINGLE_BATTLE_OVERRIDE` --------- Co-authored-by: Zach Day <zachdayz@gmail.com> * [Bug][Beta] Fix Hyper Beam, etc. permanently recharging (#3115) * Fix Hyper Beam, etc. permanently recharging * Fix override in hyper beam test * [QoL] New Starter Select UI with Filter (#2916) * update images for new UI * add updated starter UI with filter code * update starter-select test code * update win filter condition to pass test * remove unnecessary console log * update test code to match current filter UI * merge update * apply bugfix & chrry-pick small issues fix which are handled beta branch * resolve conflicts * fix lint errors * Fixed a bug where the target location for escaping using the left and right buttons on the starter button did not account for scrolling * update filter bar label color change when activated * fix lint error * fix lint * fix octolock.text.ts. it looks override import error. idk why it is happend in this PR. but it looks ok now * add passive dropdown in unlocks filter * fix lint * fix double button sound bug. refactoring genSpecies -> allSpecies, starterContainers -> starterContainer which are remove unnecessary generation axis * optimize updateStarterValueLabel function which is bottleneck of UI update latency * apply translation of gen filter label. fix lint * add # candies sort option * merge beta * resolve confilcts * fix offset of starter and start cursor * make compatible with starter UI * add missing feature * add images for legacy UI. adjust the position and size of the starterContainerWindow * [Localization] Implement Form localization (#3030) * Implement Pokemon forms localization * Update French pokemon-form.ts * Update French pokemon-form.ts * Update pokemon-form.ts * Add battle forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add cosplay forms korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add pichu form korean translation from returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add castform forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * Add remaining forms korean translation by returntoice Co-authored-by: returntoice <dieandbecome@gmail.com> * French typo corrections pokemon-form.ts * Update Korean pokemon-form.ts * Modify froakiBattleBond like rockruff of OwnTempo case, it is froakie, not greninja. * Modify zygardePc Power construct is more important information Switch its position to 50% or 10% to avoid overlapping with the sprite * Modify mispelling * Added german forms * Changed Gigadynamax and Unendynamax so it fits at all * Add partner pikachu and eevee form localization * Add mimikyu forms localization * Partner Pikachu, Partner Evoli und Mimikyu Formen hinzugefügt * Update pokemon-form.ts * Update partners * Fix conflicts * Fix useless ? by flx-sta Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fix switch use by flx-sta * Fix conflicts * Please work !!!!!!! * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/pokemon-form.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add pt_br primal localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br pikachu localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br castform localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add pt_br 3g localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add zh_cn localization Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Add pt_br other localization Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Add es castform localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es burmy localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es shellos localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rotom localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es basculin localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es deerling localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es froakie localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es scatterbug localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es furfrou localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es xerneas localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zygarde localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pumpkaboo localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es flabebe localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es oricorio localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es minior localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es magearna localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es marshadow localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es sinistea ocalization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es eiscue localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es indeedee localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es rockruff localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es mimikyu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es zarude localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es squawkabilly localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es tatsugiri localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es gimmighoul localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es poltchageit localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es paldeaTauros localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es primal localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es pikachu localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Add es partner localization Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix typedocs error * Fix typedocs error * cn form prefix added Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Fix german translate error * Fix typo Zh_CN Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update pokemon-form.ts [Localization(it)] * Update src/locales/es/pokemon-form.ts Co-authored-by: InnocentGameDev <asdargmng@gmail.com> * Fix megas forms bug and add forgotten forms * Fix wrong ko config * Add fr localization for new forms Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Add de localization for new forms Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Remove forgotten debug line Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Optimize battle forms * Update pokemon-form.ts (additional forms, italian localization) * The same typo is in the zh_TW placeholder text too. Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * Fix forgotten megaY Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add capitalizeString to utils * Fix typedoc error * Update src/data/pokemon-species.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Add ko localization for new forms Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> --------- Co-authored-by: Lugiad <adrien.grivel@hotmail.fr> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: EnochG1 <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> * [Move] Fully implement Jungle Healing/Lunar Blessing status heal (#2785) * [Bug] Fix tags not resetting on switch (#3119) Fixes #2982 * [Move] Water Shuriken guarantees 3 hits with battle bond (#2687) * [Bug] Make on-summon abilities trigger after the switch check (#3118) * Make on-summon abilities trigger after the switch check * Add test * [Ability] Cloud Nine now displays a message on activation Maintains parity with Air Lock. Both of these probably need to be localized. Should fix issue 491 though * [QoL] Summary Option for Caught Pokemon (#2921) * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed ESLint issue + addressed OrangeRed review * Fixed Github pages issue * Removed duplicate unshiftPhase * Fixed phase order * Don't start from beginning of catch function * Option to view Summary before adding new Pokemon to party * Fixed issues described by HopsWas * Adjusted makeRoomForConfirmUi to improve window spacing * Fixed Github pages issue * Fixed phase order * Quick fix * This should fix the summaryOption feature without bugging confirm-ui-handler in other cases * Revert "Merge remote-tracking branch 'origin/summaryOption1' into summaryOption1" This reverts commit ea7d0ce59e3f5631a8ef3d76646069a3945ed036, reversing changes made to 4c565958dafe6904925015ed7100e4940f041213. * Added a better conditional that reflects its source and purpose --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: AJ Fontaine <fontbane@gmail.com> * [Bug] Fix HP rounding issues (#2968) * [Bug] Fixes bug with frenzy moves keeping the confusion counter despite disruption (#3041) * Adds frenzyMissFunc trigger on NO_EFFECT hit result * Refactors FrenzyAttr to properly lapse tags each turn and remove tags on disrupt * Makes comment on CONFUSED tag clearer * Changes all integer usages to number in battler-tags * Update getBattlerTag function to use number instead of integer * [Tests] Updating Leftovers test (#3123) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Fixed import * Revert "Bug Fix" This reverts commit 834844978ef2583b00555969a99b3071c47a19d9. --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Localization] Correctly Localized German names of the BGM for Evil Teams (#3124) * [Bug] Game Stats Sub-Legendary NaN bug for new game files (#3122) * Bug Fix * Update src/system/game-stats.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Fixing a test * Revert "Fixing a test" This reverts commit 1bdbe2da5a7e29dce17911eb7c1084de44328573. * Test Re-Run --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Adjust how counter attacks target to account for uturn/voltswitch and double battles (#2462) * Adjust how counter attacks target to account for uturn/voltswitch * Creates move flag for metal burst/comeuppance to redirect in some cases * Remove debug printing * Bit shifts the redirect counter flag * Removes extraneous class from prior testing * Remove vitest timestamp file that was accidentally added * [Misc] Change fresh start achievement icon to reviver seed Mystic ticket icons in the achievements just confuse players * [Balance] Fix N-Solarizer etc appearing without secondary mon registered in dex (#2713) * Fix reins et al being available without unlocking second mon * Small fix * Parentheses for safety * Add documentation to new function * Bug Fix (#3129) Co-authored-by: Frutescens <info@laptop> * [Bug] Fixed OHKO moves being affected by accuracy and evasion battle stats (#3117) * Fixed OHKO moves being affected by accuracy and evasion battle stats * Added related tests for Fissure, unskipped related test for Hustle * Tweaked fissure accuracy and evasion tests to use spyOn() for getAccuracyMultiplier() as per feedback * Fixed accuracy test for Fissure * [Fix][Sprite] Politoed Back Sprites (#3130) * [Fix][Sprite] Politoed Back Sprites Retrieved first version from history. Rearranged frames to make jump a little less floaty. Set same anim length for all variations. Json is identical for all variations. Spritesheet frame position is identical for all variations. Trimmed the frame of extra space Reduced file size of spritesheets and JSON due to less unique frames needed. * [Fix][Sprite] Politoed Back Sprites - Reformatted JSON to texturepacker standard Reformatted json. * [Bug] Hotfix for Starter select UI with Filter (#3121) * fix remove pokemon menu * fix dropdown all is not changing bug * fix bug when go down with no starter on start button * fix starter corsor bug on deletion. out of screen cursor bug * fix challenge log * fix lint error * [Bug] fix and condition of shiny and passive (#3136) * Fixed form names not working in starter select (#3139) * [Bug] Prevent evolution causing a swap from the second ability to the HA (#3138) * Prevent evolution causing a swap from the second ability to the HA * Add tests * Update `starter-select-ui-handler.ts` * [Feature] [Item] Add White Herb item (#2719) * More work * More work * Should be finished * Fixed an error in checking target * Moved white herb effect to StatChangePhase, 50% chance of consumption * Added graphics for White Herb * Balance and documentation * Add localization entry for White Herb apply msg * Add new keys to other localization files * German translations Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update item sprite atlas * Redo item atlas * Remove whitespace in move.ts * Moved decrement outside conditional * Fix item atlas --------- Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * [Localization] Translated missing portuguese entries and some fixes (#3142) * [Bug] Caught Pokemon Summary-Modifier Display Fix (#3145) * Fixed modifiers not displaying on summary screen * Addressed Typedoc issues * Documentation added --------- Co-authored-by: Frutescens <info@laptop> * [BUG] Fixes bug that prevents pokemon with froms from hatching as rare/epic shiny variant and preventing illegal variants from legendary gacha (#2940) * Changed PokemonSpecies hasVariants function to also include for pokemon with differend forms * Added check to prevent illegal shiny variants from happening if the egg rolls the gacha legendary and has no variants * Simplified variant check. Fixed spelling on unit test * Bugfix for legacy eggs * Removed formIndex variable * Changed unit test * Added new line to unit test function Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> --------- Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Unittest] remove held item rng (white herb) from intimidate.test.ts (#3151) * Emergency delete unlock all functionality - should remove the unlock all functionality but keeps the isBeta utils function for future stuff (#3153) * Update `getAbility()` and `getAbilityCount()` for the ability changes (#3157) * Update src/data/arena-tag.ts Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: Adrian T <68144167+torranx@users.noreply.github.com> Co-authored-by: lnuvy <lnuvy.code@gmail.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com> Co-authored-by: Xavion3 <xavion333@gmail.com> Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Alexis <alexis.faizeau@animedigitalnetwork.fr> Co-authored-by: 송지원 <jiwsong@gmarket.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: Mr.WaterT <water.t.works@gmail.com> Co-authored-by: Alexis Faizeau <faizeau.alexis@gmail.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> Co-authored-by: returntoice <dieandbecome@gmail.com> Co-authored-by: Arxxer <javiptn7@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: Dmitriy K <kagno.dmitriy@gmail.com> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: RimKnight <rimknight852@gmail.com> Co-authored-by: xsn34kzx <xsn34kzx@gmail.com> Co-authored-by: Amani H <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: hayuna <marek.kowalonek@gmail.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: EmberCM <emberdevteam@gmail.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: mcmontag <54485715+mcmontag@users.noreply.github.com> Co-authored-by: schmidtc1 <62030095+schmidtc1@users.noreply.github.com> Co-authored-by: Arxalc <63990624+Arxalc@users.noreply.github.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: Frutescens <info@laptop> Co-authored-by: EmberCM <kooly213@hotmail.com> Co-authored-by: Zoruu <113668528+ArielStevens@users.noreply.github.com> Co-authored-by: Corrade <49605314+Corrade@users.noreply.github.com> Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: 송영진 <36808515+bucket1582@users.noreply.github.com> Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: 서명인 (Myungin, SEO) <65226760+smee6@users.noreply.github.com> Co-authored-by: gjeodnd12165 <61226524+gjeodnd12165@users.noreply.github.com> Co-authored-by: sirzento <sirzento@gmx.de> Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com> Co-authored-by: Benjamin Odom <bennybroseph@gmail.com> Co-authored-by: Daniel Gaston <danielgaston6@gmail.com> Co-authored-by: Zach Day <zachdayz@gmail.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: Kiriox <66013753+Kiriox94@users.noreply.github.com> Co-authored-by: MrWaterT <87186129+MrWaterT@users.noreply.github.com> Co-authored-by: AJ Fontaine <fontbane@gmail.com>
2024-07-27 23:47:00 +00:00
&& m.isTransferrable && m.pokemonId === party[fromSlotIndex].id) as PokemonHeldItemModifier[];
const itemModifier = itemModifiers[itemIndex];
this.scene.tryTransferHeldItemModifier(itemModifier, party[toSlotIndex], true, itemQuantity);
} else {
this.scene.ui.setMode(Mode.MODIFIER_SELECT, this.isPlayer(), typeOptions, modifierSelectCallback, this.getRerollCost(typeOptions, this.scene.lockModifierTiers));
}
}, PartyUiHandler.FilterItemMaxStacks);
Add Challenges (#1459) * Initial challenge framework * Add type localisation * Change how challenges are tracked Also fixes the difficulty total text * MVP Renames challenge types, temporarily hides difficulty, and implements challenge saving. * Attempt to fix one legal pokemon in a double battle * Make monotype ignore type changing effects * Make isOfType correctly detect normal types * Try to fix double battles again * Make challenge function more like classic * Add helper function for fainted or not allowed * Add framework for fresh start challenge and improve comments * Try to fix evolution issues * Make form changing items only usable from rewards screen * Update localisation * Additional localisation change * Add achievements for completing challenges * Fix initialisation bug with challenge achievements * Add support for gamemode specific fixed battles Also make monogen challenges face the e4 of their generation * Add better support for mobile in challenges * Localise illegal evolution/form change message * Update achievement names * Make alternate forms count for monogen * Update monotype achievement icons * Add more comments * Improve comments * Fix mid battle form changes * Reorder mode list * Remove currently unused localisation entry * Add type overrides for monotype challenges Meloetta always counts for psychic and castform always counts for normal * Change how form changes are handled Now attempts a switch at the start of each turn instead of immediately * Add start button to challenge select screen * Make starter select back out to challenge screen if using challenges * Fix daily runs * Update tests to new game mode logic
2024-06-08 05:07:23 +00:00
break;
case 2:
this.scene.ui.setModeWithoutClear(Mode.PARTY, PartyUiMode.CHECK, -1, () => {
this.scene.ui.setMode(Mode.MODIFIER_SELECT, this.isPlayer(), typeOptions, modifierSelectCallback, this.getRerollCost(typeOptions, this.scene.lockModifierTiers));
});
break;
case 3:
this.scene.lockModifierTiers = !this.scene.lockModifierTiers;
const uiHandler = this.scene.ui.getHandler() as ModifierSelectUiHandler;
uiHandler.setRerollCost(this.getRerollCost(typeOptions, this.scene.lockModifierTiers));
uiHandler.updateLockRaritiesText();
uiHandler.updateRerollCostText();
return false;
}
return true;
case 1:
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
if (typeOptions[cursor].type) {
modifierType = typeOptions[cursor].type;
}
break;
default:
const shopOptions = getPlayerShopModifierTypeOptionsForWave(this.scene.currentBattle.waveIndex, this.scene.getWaveMoneyAmount(1));
const shopOption = shopOptions[rowCursor > 2 || shopOptions.length <= SHOP_OPTIONS_ROW_LIMIT ? cursor : cursor + SHOP_OPTIONS_ROW_LIMIT];
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
if (shopOption.type) {
modifierType = shopOption.type;
}
cost = shopOption.cost;
break;
}
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
if (cost! && (this.scene.money < cost) && !Overrides.WAIVE_ROLL_FEE_OVERRIDE) { // TODO: is the bang on cost correct?
this.scene.ui.playError();
return false;
}
const applyModifier = (modifier: Modifier, playSound: boolean = false) => {
const result = this.scene.addModifier(modifier, false, playSound);
2024-03-14 21:15:01 +00:00
if (cost) {
result.then(success => {
if (success) {
if (!Overrides.WAIVE_ROLL_FEE_OVERRIDE) {
this.scene.money -= cost;
this.scene.updateMoneyText();
this.scene.animateMoneyChanged(false);
}
this.scene.playSound("buy");
(this.scene.ui.getHandler() as ModifierSelectUiHandler).updateCostText();
} else {
this.scene.ui.playError();
}
});
2024-03-14 21:15:01 +00:00
} else {
const doEnd = () => {
this.scene.ui.clearText();
this.scene.ui.setMode(Mode.MESSAGE);
super.end();
};
if (result instanceof Promise) {
result.then(() => doEnd());
} else {
doEnd();
}
2024-03-14 21:15:01 +00:00
}
};
2023-04-10 18:12:01 +00:00
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
if (modifierType! instanceof PokemonModifierType) { //TODO: is the bang correct?
2023-11-04 04:32:12 +00:00
if (modifierType instanceof FusePokemonModifierType) {
this.scene.ui.setModeWithoutClear(Mode.PARTY, PartyUiMode.SPLICE, -1, (fromSlotIndex: integer, spliceSlotIndex: integer) => {
if (spliceSlotIndex !== undefined && fromSlotIndex < 6 && spliceSlotIndex < 6 && fromSlotIndex !== spliceSlotIndex) {
this.scene.ui.setMode(Mode.MODIFIER_SELECT, this.isPlayer()).then(() => {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
const modifier = modifierType.newModifier(party[fromSlotIndex], party[spliceSlotIndex])!; //TODO: is the bang correct?
applyModifier(modifier, true);
2023-11-04 04:32:12 +00:00
});
} else {
this.scene.ui.setMode(Mode.MODIFIER_SELECT, this.isPlayer(), typeOptions, modifierSelectCallback, this.getRerollCost(typeOptions, this.scene.lockModifierTiers));
}
2023-11-04 04:32:12 +00:00
}, modifierType.selectFilter);
} else {
const pokemonModifierType = modifierType as PokemonModifierType;
const isMoveModifier = modifierType instanceof PokemonMoveModifierType;
const isTmModifier = modifierType instanceof TmModifierType;
const isRememberMoveModifier = modifierType instanceof RememberMoveModifierType;
const isPpRestoreModifier = (modifierType instanceof PokemonPpRestoreModifierType || modifierType instanceof PokemonPpUpModifierType);
2023-11-04 04:32:12 +00:00
const partyUiMode = isMoveModifier ? PartyUiMode.MOVE_MODIFIER
: isTmModifier ? PartyUiMode.TM_MODIFIER
: isRememberMoveModifier ? PartyUiMode.REMEMBER_MOVE_MODIFIER
: PartyUiMode.MODIFIER;
2023-11-04 04:32:12 +00:00
const tmMoveId = isTmModifier
? (modifierType as TmModifierType).moveId
: undefined;
this.scene.ui.setModeWithoutClear(Mode.PARTY, partyUiMode, -1, (slotIndex: integer, option: PartyOption) => {
if (slotIndex < 6) {
this.scene.ui.setMode(Mode.MODIFIER_SELECT, this.isPlayer()).then(() => {
const modifier = !isMoveModifier
? !isRememberMoveModifier
? modifierType.newModifier(party[slotIndex])
: modifierType.newModifier(party[slotIndex], option as integer)
2023-11-04 04:32:12 +00:00
: modifierType.newModifier(party[slotIndex], option - PartyOption.MOVE_1);
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
applyModifier(modifier!, true); // TODO: is the bang correct?
2023-11-04 04:32:12 +00:00
});
} else {
this.scene.ui.setMode(Mode.MODIFIER_SELECT, this.isPlayer(), typeOptions, modifierSelectCallback, this.getRerollCost(typeOptions, this.scene.lockModifierTiers));
}
}, pokemonModifierType.selectFilter, modifierType instanceof PokemonMoveModifierType ? (modifierType as PokemonMoveModifierType).moveSelectFilter : undefined, tmMoveId, isPpRestoreModifier);
2023-11-04 04:32:12 +00:00
}
} else {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
applyModifier(modifierType!.newModifier()!); // TODO: is the bang correct?
}
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
return !cost!;// TODO: is the bang correct?
2023-04-10 18:12:01 +00:00
};
this.scene.ui.setMode(Mode.MODIFIER_SELECT, this.isPlayer(), typeOptions, modifierSelectCallback, this.getRerollCost(typeOptions, this.scene.lockModifierTiers));
}
updateSeed(): void {
this.scene.resetSeed();
}
isPlayer(): boolean {
return true;
}
getRerollCost(typeOptions: ModifierTypeOption[], lockRarities: boolean): integer {
let baseValue = 0;
if (Overrides.WAIVE_ROLL_FEE_OVERRIDE) {
return baseValue;
} else if (lockRarities) {
const tierValues = [50, 125, 300, 750, 2000];
for (const opt of typeOptions) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
baseValue += opt.type?.tier ? tierValues[opt.type.tier] : 0;
}
} else {
baseValue = 250;
}
2024-04-26 17:05:48 +00:00
return Math.min(Math.ceil(this.scene.currentBattle.waveIndex / 10) * baseValue * Math.pow(2, this.rerollCount), Number.MAX_SAFE_INTEGER);
}
2024-05-23 23:45:04 +00:00
getPoolType(): ModifierPoolType {
return ModifierPoolType.PLAYER;
}
getModifierTypeOptions(modifierCount: integer): ModifierTypeOption[] {
return getPlayerModifierTypeOptions(modifierCount, this.scene.getParty(), this.scene.lockModifierTiers ? this.modifierTiers : undefined);
}
2024-04-16 19:22:19 +00:00
addModifier(modifier: Modifier): Promise<boolean> {
return this.scene.addModifier(modifier, false, true);
}
}
export class EggLapsePhase extends Phase {
constructor(scene: BattleScene) {
super(scene);
}
start() {
super.start();
const eggsToHatch: Egg[] = this.scene.gameData.eggs.filter((egg: Egg) => {
[Feature] [Same species Egg] Egg class rewrite to enable fully parameterized eggs to generate same species eggs + Egg overrides (#1833) * Create variant-tiers enum * Added variant tier override property to the egg class * Added hasVariants function to pokemon species * Implement variant override logic to egg hatching phase * Delete src/enums/variant-tiers * Create variant-tiers enum * Added egg shiny and variant overrides * fixed egg comment in overrides.ts * Added override logic to egg hatch phase * Added species pool filter logic when global override is set * Added global egg tier override logic * Added global egg tier override * Added global gacha pull count override logic * Added global gacha pull count override * Renamed egg hatch override * Renamed egg hatch override * Added gacha pull without voucher global override * Renamed free gacha pull global override * Added free gacha pull override logic * Gacha pull count override name fix * Bugfix * restored defaults + savegame bugfix * eggOptions added to parameterize eggs. Added option to buy eggs of the same species. * Small Bugfix for same species egg generation * Removed translation from translator * Improved the isManaphyEgg() check * Fixed manaphy egg hatch wave count * Added comments to IEggOptions * Added eggOptions for hidden ability and rare egg move override * Merge Fix: Update egg-hatch-phase.ts * Fixed manaphy rates back to 1/256 like in PR #2182 * Renamed override, same species egg unlocks after passive is bought. Added code as comment for custom shiny, HA and rare egg move rates. * Merge fix. Moved enums. * quick fix for the commented out code * Fixed that you can't buy an egg over the 99 egg limit * Fix that you can't buy eternatus * Use already existing randSeedShuffle instead of my own function * Eternatus buyable again. Changed overrides to be able to set common tier/variants. Moved getGuaranteedEggTierFromPullCount(). * Changed eggOption gachaType to sourceType. Replaced eggOption overrideRareEggMove with eggMoveIndex to exatly specify an egg move. Moved egg move unlock logic into the egg class. Simplified shiny calculation. Added same species egg type descriptor. Moved custom rates for same species egg code into egg.ts. * Added 19 unit tests for eggs * Changed unit test description * Added higher rates for same species eggs * Adjusted same species egg cost for 1-3 cost starters and HA rates * Added legacy egg loading unit test. Fixed gachaType legacy value loaded from DB and legacy tier loading * Legacy egg loading from server DB fixed
2024-06-22 00:19:56 +00:00
return Overrides.EGG_IMMEDIATE_HATCH_OVERRIDE ? true : --egg.hatchWaves < 1;
});
let eggCount: integer = eggsToHatch.length;
if (eggCount) {
this.scene.queueMessage(i18next.t("battle:eggHatching"));
2024-05-23 23:45:04 +00:00
for (const egg of eggsToHatch) {
this.scene.unshiftPhase(new EggHatchPhase(this.scene, egg, eggCount));
if (eggCount > 0) {
eggCount--;
}
}
2024-05-23 23:45:04 +00:00
}
this.end();
}
}
export class AddEnemyBuffModifierPhase extends Phase {
constructor(scene: BattleScene) {
super(scene);
}
start() {
super.start();
const waveIndex = this.scene.currentBattle.waveIndex;
const tier = !(waveIndex % 1000) ? ModifierTier.ULTRA : !(waveIndex % 250) ? ModifierTier.GREAT : ModifierTier.COMMON;
regenerateModifierPoolThresholds(this.scene.getEnemyParty(), ModifierPoolType.ENEMY_BUFF);
2024-05-23 23:45:04 +00:00
const count = Math.ceil(waveIndex / 250);
for (let i = 0; i < count; i++) {
this.scene.addEnemyModifier(getEnemyBuffModifierForWave(tier, this.scene.findModifiers(m => m instanceof EnemyPersistentModifier, false), this.scene), true, true);
}
this.scene.updateModifiers(false, true).then(() => this.end());
2023-04-10 18:12:01 +00:00
}
}
/**
* Cures the party of all non-volatile status conditions, shows a message
* @param {BattleScene} scene The current scene
* @param {Pokemon} user The user of the move that cures the party
* @param {string} message The message that should be displayed
* @param {Abilities} abilityCondition Pokemon with this ability will not be affected ie. Soundproof
*/
export class PartyStatusCurePhase extends BattlePhase {
private user: Pokemon;
private message: string;
private abilityCondition: Abilities;
constructor(scene: BattleScene, user: Pokemon, message: string, abilityCondition: Abilities) {
super(scene);
this.user = user;
this.message = message;
this.abilityCondition = abilityCondition;
}
start() {
super.start();
for (const pokemon of this.scene.getParty()) {
if (!pokemon.isOnField() || pokemon === this.user) {
pokemon.resetStatus(false);
pokemon.updateInfo(true);
} else {
if (!pokemon.hasAbility(this.abilityCondition)) {
pokemon.resetStatus();
pokemon.updateInfo(true);
} else {
// Manually show ability bar, since we're not hooked into the targeting system
pokemon.scene.unshiftPhase(new ShowAbilityPhase(pokemon.scene, pokemon.id, pokemon.getPassiveAbility()?.id === this.abilityCondition));
}
}
}
if (this.message) {
this.scene.queueMessage(this.message);
}
this.end();
}
}
export class PartyHealPhase extends BattlePhase {
private resumeBgm: boolean;
constructor(scene: BattleScene, resumeBgm: boolean) {
super(scene);
this.resumeBgm = resumeBgm;
}
start() {
super.start();
const bgmPlaying = this.scene.isBgmPlaying();
if (bgmPlaying) {
this.scene.fadeOutBgm(1000, false);
}
this.scene.ui.fadeOut(1000).then(() => {
for (const pokemon of this.scene.getParty()) {
pokemon.hp = pokemon.getMaxHp();
pokemon.resetStatus();
for (const move of pokemon.moveset) {
[Refactor] use typescript `strict-null` (#3259) * TS: enable strict-null * fix battle-scene.ts * fix voucher.ts * adapt more files to strict-null * adapt more files to strict-null ( 2) * adapt ability.ts to strict-null * adapt `arena.ts` to strict-null * adapt TagAddedEvent constructor to strict-null * adapt phases.ts.to strict-null * adapt status-effect.ts to strict-null * adapt `account.ts` to strict-null * adapt `configHandler.ts` to strict-null * adapt `ability.ts` to strict-null * adapt `biomes.ts` to strict-null * adapt `challenge.ts` to strict-null * adapt `daily-run.ts` to strict-null * adapt `nature.ts` to strict-null * adapt `pokemon-forms.ts` to strict-null * adapt `tainer-names.ts` to strict-null * adapt `types.ts` to strict-null * adapt `weather.ts` to strict-null * adapt `egg-hatch-phase.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `pokemon-sprite-sparkle-handler.ts` to strict-null * adapt `evolution-phase.ts` to strict-null * adapt `game-mode.ts` to strict-null * adapt `utils.ts` to strict-null * adapt `voucher-ui-handler.ts` to strict-null * adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null * adapt `src/ui/ui.ts` to strict-null * adapt `src/ui/ui-theme.ts` to strict-null * adapt `src/ui/title-ui-handler.ts` to strict-null * adapt `src/ui/time-of-day-widget.ts` to strict-null * adapt `src/ui/text.ts` to strict-null * adapt `src/ui/target-select-ui-handler.ts` to strict-null * adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null * adapt more files to strict-null (3) * adapt more files to strict-null (4) * adapt more files (mostly tests) to strict-null (5) * adapt more files to strict-null (6) * adapt more files to strict-null (7) * Update `src/data/pokemon-evolutions.ts` for strict-null Partial update `src/data/pokemon-species.ts` for strict-null * adapt more files to strict-null (8) * adapt more files to strict-null (9) * Strict some more nulls (still a few errors remaining) * adapt rest of the files to strict-null (9) * fix tests (check for null instead of undefined) * repalce a lot of `??` with bangs And added TODO notice as usual * fix more tests * all tests pass now * fix broken game-loop after trainer battle add some console.warn for missing cases and falling back to default * remove guessed fallback from utils.rgbHexToRgba * add TODO for this.currentBattle = null * adjust getPokemonById() return to include `null` * fix compilation errors * add test for pokemon.trySetStatus * `chanceMultiplier` shouldn't be optional * allow `null` for currentPhase * adjust hasExpSprite logic for no keymatch found * reduce bang usage in account.updateUserInfo() * fix new strict-null issues after merge * fix `strict-null` issues in dropdown.ts and sand_spit.test.ts * fix egg-gacha * adapt gul_missile.test.ts to strict-null * fix move.ts strict-null * fix i18n.ts strict-null * fix strict-null issues * fix baton_pass test after accidentially breaking it * chore: fix compiler errors * revert accidential changes in baton_pass.test.ts --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-08-07 16:23:12 +00:00
move!.ppUsed = 0; // TODO: is this bang correct?
}
pokemon.updateInfo(true);
}
const healSong = this.scene.playSoundWithoutBgm("heal");
2024-04-04 21:43:37 +00:00
this.scene.time.delayedCall(Utils.fixedInt(healSong.totalDuration * 1000), () => {
healSong.destroy();
if (this.resumeBgm && bgmPlaying) {
this.scene.playBgm();
}
this.scene.ui.fadeIn(500).then(() => this.end());
});
});
}
}
2023-04-10 18:12:01 +00:00
export class ShinySparklePhase extends PokemonPhase {
constructor(scene: BattleScene, battlerIndex: BattlerIndex) {
super(scene, battlerIndex);
2023-04-10 18:12:01 +00:00
}
start() {
super.start();
this.getPokemon().sparkle();
this.scene.time.delayedCall(1000, () => this.end());
}
}
2023-11-12 17:49:06 +00:00
export class ScanIvsPhase extends PokemonPhase {
private shownIvs: integer;
constructor(scene: BattleScene, battlerIndex: BattlerIndex, shownIvs: integer) {
super(scene, battlerIndex);
this.shownIvs = shownIvs;
}
start() {
super.start();
if (!this.shownIvs) {
2023-11-12 17:49:06 +00:00
return this.end();
}
2023-11-12 17:49:06 +00:00
const pokemon = this.getPokemon();
[QoL] IV scanner update to hide the prompt and let you see the stats mid battle on the stats screen (#3285) * IV scanner PR fix Updated locales to have updated keys for IV scanner in menu Updated legacy UI to work with IV scanner changes Updated code to have player and enemy battle stats for ease of use Updated logic to make the player side work exactly the same as previously since there should be no HP stat shown for players. Also updated the colours so there's no more grey option for unknown stats Added HP, updated logic and colours. Need to undo changes to player pokemon to not be as squished because of no HP, and need to see what happens for trainers Fixing up some git errors Fixed a bug with double battles not updating the pokemon properly Updated settings to allow for the ability to skip the IV scanning prompts Adding functionality to IV scanner to skip prompt and see IVs mid battle * Merged with latest + fixed bug with IV scanner vs pokemon info container getRootSpeciesId being different * Updated as per merge comment * Updating to fix comments * Updated comments * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/settings.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/settings.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/settings.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Updating text of IV scanner to be gold * Updated text colour to use one of the existing golds instead of a custom gold * Japanese locale * Updating docs --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com>
2024-08-08 05:04:12 +00:00
let enemyIvs: number[] = [];
let statsContainer: Phaser.GameObjects.Sprite[] = [];
let statsContainerLabels: Phaser.GameObjects.Sprite[] = [];
const enemyField = this.scene.getEnemyField();
const uiTheme = (this.scene as BattleScene).uiTheme; // Assuming uiTheme is accessible
for (let e = 0; e < enemyField.length; e++) {
enemyIvs = enemyField[e].ivs;
const currentIvs = this.scene.gameData.dexData[enemyField[e].species.getRootSpeciesId()].ivs; // we are using getRootSpeciesId() here because we want to check against the baby form, not the mid form if it exists
const ivsToShow = this.scene.ui.getMessageHandler().getTopIvs(enemyIvs, this.shownIvs);
statsContainer = enemyField[e].getBattleInfo().getStatsValueContainer().list as Phaser.GameObjects.Sprite[];
statsContainerLabels = statsContainer.filter(m => m.name.indexOf("icon_stat_label") >= 0);
for (let s = 0; s < statsContainerLabels.length; s++) {
const ivStat = Stat[statsContainerLabels[s].frame.name];
if (enemyIvs[ivStat] > currentIvs[ivStat] && ivsToShow.indexOf(Number(ivStat)) >= 0) {
const hexColour = enemyIvs[ivStat] === 31 ? getTextColor(TextStyle.PERFECT_IV, false, uiTheme) : getTextColor(TextStyle.SUMMARY_GREEN, false, uiTheme);
const hexTextColour = Phaser.Display.Color.HexStringToColor(hexColour).color;
statsContainerLabels[s].setTint(hexTextColour);
}
statsContainerLabels[s].setVisible(true);
}
}
if (!this.scene.hideIvs) {
this.scene.ui.showText(i18next.t("battle:ivScannerUseQuestion", { pokemonName: getPokemonNameWithAffix(pokemon) }), null, () => {
this.scene.ui.setMode(Mode.CONFIRM, () => {
this.scene.ui.setMode(Mode.MESSAGE);
this.scene.ui.clearText();
new CommonBattleAnim(CommonAnim.LOCK_ON, pokemon, pokemon).play(this.scene, () => {
this.scene.ui.getMessageHandler().promptIvs(pokemon.id, pokemon.ivs, this.shownIvs).then(() => this.end());
});
}, () => {
this.scene.ui.setMode(Mode.MESSAGE);
this.scene.ui.clearText();
this.end();
2023-11-12 17:49:06 +00:00
});
});
[QoL] IV scanner update to hide the prompt and let you see the stats mid battle on the stats screen (#3285) * IV scanner PR fix Updated locales to have updated keys for IV scanner in menu Updated legacy UI to work with IV scanner changes Updated code to have player and enemy battle stats for ease of use Updated logic to make the player side work exactly the same as previously since there should be no HP stat shown for players. Also updated the colours so there's no more grey option for unknown stats Added HP, updated logic and colours. Need to undo changes to player pokemon to not be as squished because of no HP, and need to see what happens for trainers Fixing up some git errors Fixed a bug with double battles not updating the pokemon properly Updated settings to allow for the ability to skip the IV scanning prompts Adding functionality to IV scanner to skip prompt and see IVs mid battle * Merged with latest + fixed bug with IV scanner vs pokemon info container getRootSpeciesId being different * Updated as per merge comment * Updating to fix comments * Updated comments * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/settings.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/pt_BR/settings.ts Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_CN/settings.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/zh_TW/settings.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Updating text of IV scanner to be gold * Updated text colour to use one of the existing golds instead of a custom gold * Japanese locale * Updating docs --------- Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com>
2024-08-08 05:04:12 +00:00
} else {
this.end();
}
2023-11-12 17:49:06 +00:00
}
}
2023-12-12 02:46:49 +00:00
export class TrainerMessageTestPhase extends BattlePhase {
2024-02-06 21:15:35 +00:00
private trainerTypes: TrainerType[];
constructor(scene: BattleScene, ...trainerTypes: TrainerType[]) {
2023-12-12 02:46:49 +00:00
super(scene);
2024-05-23 23:45:04 +00:00
2024-02-06 21:15:35 +00:00
this.trainerTypes = trainerTypes;
2023-12-12 02:46:49 +00:00
}
start() {
super.start();
const testMessages: string[] = [];
2024-05-23 23:45:04 +00:00
for (const t of Object.keys(trainerConfigs)) {
2024-02-06 21:15:35 +00:00
const type = parseInt(t);
if (this.trainerTypes.length && !this.trainerTypes.find(tt => tt === type as TrainerType)) {
2024-02-06 21:15:35 +00:00
continue;
}
2024-02-06 21:15:35 +00:00
const config = trainerConfigs[type];
[config.encounterMessages, config.femaleEncounterMessages, config.victoryMessages, config.femaleVictoryMessages, config.defeatMessages, config.femaleDefeatMessages]
2023-12-12 02:46:49 +00:00
.map(messages => {
if (messages?.length) {
2023-12-12 02:46:49 +00:00
testMessages.push(...messages);
}
2023-12-12 02:46:49 +00:00
});
}
for (const message of testMessages) {
2023-12-12 02:46:49 +00:00
this.scene.pushPhase(new TestMessagePhase(this.scene, message));
}
2023-12-12 02:46:49 +00:00
this.end();
}
}
export class TestMessagePhase extends MessagePhase {
constructor(scene: BattleScene, message: string) {
super(scene, message, null, true);
}
}