pokerogue/src/battle-scene.ts

3326 lines
130 KiB
TypeScript
Raw Permalink Normal View History

import Phaser from "phaser";
import UI from "#app/ui/ui";
import Pokemon, { EnemyPokemon, PlayerPokemon } from "#app/field/pokemon";
import PokemonSpecies, { allSpecies, getPokemonSpecies, PokemonSpeciesFilter } from "#app/data/pokemon-species";
2024-09-22 18:53:18 +01:00
import { Constructor, isNullOrUndefined, randSeedInt } from "#app/utils";
import * as Utils from "#app/utils";
import { ConsumableModifier, ConsumablePokemonModifier, DoubleBattleChanceBoosterModifier, ExpBalanceModifier, ExpShareModifier, FusePokemonModifier, HealingBoosterModifier, Modifier, ModifierBar, ModifierPredicate, MultipleParticipantExpBonusModifier, overrideHeldItems, overrideModifiers, PersistentModifier, PokemonExpBoosterModifier, PokemonFormChangeItemModifier, PokemonHeldItemModifier, PokemonHpRestoreModifier, PokemonIncrementingStatModifier, RememberMoveModifier, TerastallizeModifier, TurnHeldItemTransferModifier } from "./modifier/modifier";
import { PokeballType } from "#app/data/pokeball";
import { initCommonAnims, initMoveAnim, loadCommonAnimAssets, loadMoveAnimAssets, populateAnims } from "#app/data/battle-anims";
import { Phase } from "#app/phase";
import { initGameSpeed } from "#app/system/game-speed";
import { Arena, ArenaBase } from "#app/field/arena";
import { GameData } from "#app/system/game-data";
import { addTextObject, getTextColor, TextStyle } from "#app/ui/text";
import { allMoves } from "#app/data/move";
import { MusicPreference } from "#app/system/settings/settings";
import { getDefaultModifierTypeForTier, getEnemyModifierTypesForWave, getLuckString, getLuckTextTint, getModifierPoolForType, getModifierType, getPartyLuckValue, ModifierPoolType, modifierTypes, PokemonHeldItemModifierType } from "#app/modifier/modifier-type";
import AbilityBar from "#app/ui/ability-bar";
import { allAbilities, applyAbAttrs, applyPostBattleInitAbAttrs, applyPostItemLostAbAttrs, BlockItemTheftAbAttr, DoubleBattleChanceAbAttr, PostBattleInitAbAttr, PostItemLostAbAttr } from "#app/data/ability";
import Battle, { BattleType, FixedBattleConfig } from "#app/battle";
import { GameMode, GameModes, getGameMode } from "#app/game-mode";
import FieldSpritePipeline from "#app/pipelines/field-sprite";
import SpritePipeline from "#app/pipelines/sprite";
import PartyExpBar from "#app/ui/party-exp-bar";
import { trainerConfigs, TrainerSlot } from "#app/data/trainer-config";
import Trainer, { TrainerVariant } from "#app/field/trainer";
import TrainerData from "#app/system/trainer-data";
import SoundFade from "phaser3-rex-plugins/plugins/soundfade";
import { pokemonPrevolutions } from "#app/data/balance/pokemon-evolutions";
import PokeballTray from "#app/ui/pokeball-tray";
import InvertPostFX from "#app/pipelines/invert";
import { Achv, achvs, ModifierAchv, MoneyAchv } from "#app/system/achv";
import { Voucher, vouchers } from "#app/system/voucher";
import { Gender } from "#app/data/gender";
import UIPlugin from "phaser3-rex-plugins/templates/ui/ui-plugin";
import { addUiThemeOverrides } from "#app/ui/ui-theme";
import PokemonData from "#app/system/pokemon-data";
import { Nature } from "#app/data/nature";
import { FormChangeItem, pokemonFormChanges, SpeciesFormChange, SpeciesFormChangeManualTrigger, SpeciesFormChangeTimeOfDayTrigger, SpeciesFormChangeTrigger } from "#app/data/pokemon-forms";
import { FormChangePhase } from "#app/phases/form-change-phase";
import { getTypeRgb } from "#app/data/type";
import PokemonSpriteSparkleHandler from "#app/field/pokemon-sprite-sparkle-handler";
import CharSprite from "#app/ui/char-sprite";
import DamageNumberHandler from "#app/field/damage-number-handler";
import PokemonInfoContainer from "#app/ui/pokemon-info-container";
import { biomeDepths, getBiomeName } from "#app/data/balance/biomes";
import { SceneBase } from "#app/scene-base";
import CandyBar from "#app/ui/candy-bar";
import { Variant, variantData } from "#app/data/variant";
import { Localizable } from "#app/interfaces/locales";
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-28 00:47:00 +01:00
import Overrides from "#app/overrides";
import { InputsController } from "#app/inputs-controller";
import { UiInputs } from "#app/ui-inputs";
import { NewArenaEvent } from "#app/events/battle-scene";
import { ArenaFlyout } from "#app/ui/arena-flyout";
import { EaseType } from "#enums/ease-type";
import { BattleSpec } from "#enums/battle-spec";
import { BattleStyle } from "#enums/battle-style";
import { Biome } from "#enums/biome";
import { ExpNotification } from "#enums/exp-notification";
import { MoneyFormat } from "#enums/money-format";
import { Moves } from "#enums/moves";
import { PlayerGender } from "#enums/player-gender";
import { Species } from "#enums/species";
import { UiTheme } from "#enums/ui-theme";
import { TimedEventManager } from "#app/timed-event-manager";
[Move] Implement Substitute (#2559) * Implement Substitute Squashed commit from working branch * Fix integration test imports * Use Override Helper utils + Fix Baton Pass test * Update src/test/moves/substitute.test.ts Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com> * Fix test imports + nits * Document RemoveAllSubstitutesAttr * Fix some strict-null issues * more strict-null fixes * Fix baton pass test * Reorganized Substitute translation keys * Added checks for substitute in contact logic * Clean up Unseen Fist contact logic * Remove misleading comment in Download attr * RIP phases.ts * Fix imports post-phase migration * Rewrite `move.canIgnoreSubstitute` to `move.hitsSubstitute` * Also fixed interactions with Shell Trap and Beak Blast * Removed some leftover `canIgnoreSubstitute`s * fix issues after beta merge * Status move effectiveness now accounts for substitute * More edge case tests (Counter test failing) * Fix Counter + Trap edge cases + add Fail messagesd * Fix leftover nit * Resolve leftover test issues * Fix Sub offset carrying over to Trainer fights * Hide substitute sprite during catch attempts * Make substitutes baton-passable again * Remove placeholder locale keys and SPLASH_ONLY * Fix imports and other nits Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> * ESLint * Fix imports * Fix incorrect `resetSprite` timing * Fix substitute disappearing on hit (maybe?) * More animation fixes (mostly for Roar) --------- Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-09-13 17:46:22 +01:00
import { PokemonAnimType } from "#enums/pokemon-anim-type";
import i18next from "i18next";
import { TrainerType } from "#enums/trainer-type";
import { battleSpecDialogue } from "#app/data/dialogue";
import { LoadingScene } from "#app/loading-scene";
import { LevelCapPhase } from "#app/phases/level-cap-phase";
import { LoginPhase } from "#app/phases/login-phase";
import { MessagePhase } from "#app/phases/message-phase";
import { MovePhase } from "#app/phases/move-phase";
import { NewBiomeEncounterPhase } from "#app/phases/new-biome-encounter-phase";
import { NextEncounterPhase } from "#app/phases/next-encounter-phase";
import { PokemonAnimPhase } from "#app/phases/pokemon-anim-phase";
import { QuietFormChangePhase } from "#app/phases/quiet-form-change-phase";
import { ReturnPhase } from "#app/phases/return-phase";
import { SelectBiomePhase } from "#app/phases/select-biome-phase";
import { ShowTrainerPhase } from "#app/phases/show-trainer-phase";
import { SummonPhase } from "#app/phases/summon-phase";
import { SwitchPhase } from "#app/phases/switch-phase";
import { TitlePhase } from "#app/phases/title-phase";
import { ToggleDoublePositionPhase } from "#app/phases/toggle-double-position-phase";
import { TurnInitPhase } from "#app/phases/turn-init-phase";
import { ShopCursorTarget } from "#app/enums/shop-cursor-target";
import MysteryEncounter from "#app/data/mystery-encounters/mystery-encounter";
import { allMysteryEncounters, ANTI_VARIANCE_WEIGHT_MODIFIER, AVERAGE_ENCOUNTERS_PER_RUN_TARGET, BASE_MYSTERY_ENCOUNTER_SPAWN_WEIGHT, MYSTERY_ENCOUNTER_SPAWN_MAX_WEIGHT, mysteryEncountersByBiome } from "#app/data/mystery-encounters/mystery-encounters";
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
import { MysteryEncounterSaveData } from "#app/data/mystery-encounters/mystery-encounter-save-data";
import { MysteryEncounterType } from "#enums/mystery-encounter-type";
import { MysteryEncounterTier } from "#enums/mystery-encounter-tier";
import HeldModifierConfig from "#app/interfaces/held-modifier-config";
import { ExpPhase } from "#app/phases/exp-phase";
import { ShowPartyExpBarPhase } from "#app/phases/show-party-exp-bar-phase";
import { MysteryEncounterMode } from "#enums/mystery-encounter-mode";
import { ExpGainsSpeed } from "#enums/exp-gains-speed";
import { FRIENDSHIP_GAIN_FROM_BATTLE } from "#app/data/balance/starters";
2023-03-28 19:54:52 +01:00
export const bypassLogin = import.meta.env.VITE_BYPASS_LOGIN === "1";
const DEBUG_RNG = false;
const OPP_IVS_OVERRIDE_VALIDATED : integer[] = (
Array.isArray(Overrides.OPP_IVS_OVERRIDE) ?
Overrides.OPP_IVS_OVERRIDE :
new Array(6).fill(Overrides.OPP_IVS_OVERRIDE)
).map(iv => isNaN(iv) || iv === null || iv > 31 ? -1 : iv);
export const startingWave = Overrides.STARTING_WAVE_OVERRIDE || 1;
2023-04-09 05:22:14 +01:00
2024-02-25 02:16:19 +00:00
const expSpriteKeys: string[] = [];
export let starterColors: StarterColors;
interface StarterColors {
[key: string]: [string, string]
}
2023-04-28 20:03:42 +01:00
export interface PokeballCounts {
[pb: string]: integer;
}
2023-10-26 21:33:59 +01:00
export type AnySound = Phaser.Sound.WebAudioSound | Phaser.Sound.HTML5AudioSound | Phaser.Sound.NoAudioSound;
export interface InfoToggle {
toggleInfo(force?: boolean): void;
isActive(): boolean;
}
export default class BattleScene extends SceneBase {
public rexUI: UIPlugin;
public inputController: InputsController;
public uiInputs: UiInputs;
[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 17:23:12 +01:00
public sessionPlayTime: integer | null = null;
public lastSavePlayTime: integer | null = null;
public masterVolume: number = 0.5;
public bgmVolume: number = 1;
[Refactor][QoL] Game Audio + New Settings (#3527) * Changed how non-BGM are loaded into the game + moved into directories * some leftovers * Apply suggestions from code review Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Added setting for Field Volume + rewrote playSound() and updateSoundVolume() functions to reflect the new settings. * Main -> Beta (#3635) * Fixed issue with falsy issue within condition to get a stat for IV scanner * add fix setting code to prevent form/variant bug when default form/variant setting is wrong. in addition, that fix code include gender fix, so i revert old gender fix. update wrong log message. * [Hotfix] Fix Memory Mushroom not showing relearner moves (#3619) * Fix Memory Mushroom not showing relearner moves * Fix rollout test * Rewrite player faint logic in FaintPhase (#3614) * 867 runerigus sprite (#3629) cropped static frames, fixed cropped sprite set runerigus exp to use the shiny exp's animation verified all hex colors are unchanged - fixed ultra necrozma exp front variant swapped arrays. - xatu female eye color fix * [Bug] Preventing the MBH from being stolen in Endless (#3630) * Endless MBH Fix * add import * Revert "add import" This reverts commit 814a4059c2830e972c348d698259535e117850bf. * Revert "Endless MBH Fix" This reverts commit 8eb448130132ff9eed614a2ec576926814008df0. * removed newline --------- Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> Co-authored-by: frutescens <info@laptop> * [Bug] Fix type-hints for immunity (#3620) * enable mock containers to be found by name * enable mock text to be found by name * add test coverage for type-hints Only for "immunity" and "status moves" * fix wrong message key of curse(ghost type) (#3631) Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> * [Hotfix] Steal-able Mini Black Hole Pt 2 (#3632) * Still have no idea where Eternatus is given the MBH.... * typedocs --------- Co-authored-by: frutescens <info@laptop> * [Hotfix] Abilities that prevent ATK drops no longer stop other stat drops (#3624) * Abilities that prevent ATK drops no longer stop other stat drops * Apply suggestions from code review Co-authored-by: Mumble <kimjoanne@protonmail.com> * Add `isNullOrUndefined()` utility function --------- * Grip Claw now shows the proper pokemon nickname (#3634) Co-authored-by: frutescens <info@laptop> --------- Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: KimJeongSun <leo@atlaslabs.ai> Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com> * [Bug] Preventing the MBH from being stolen in Endless (#3630) * Endless MBH Fix * add import * Revert "add import" This reverts commit 814a4059c2830e972c348d698259535e117850bf. * Revert "Endless MBH Fix" This reverts commit 8eb448130132ff9eed614a2ec576926814008df0. * removed newline --------- Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> Co-authored-by: frutescens <info@laptop> * [Hotfix] Steal-able Mini Black Hole Pt 2 (#3632) * Still have no idea where Eternatus is given the MBH.... * typedocs --------- Co-authored-by: frutescens <info@laptop> * Deleted phases.ts (#3618) * Updated sound terms * Added space for localization * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_TW/settings.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@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/zh_CN/settings.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/de/settings.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/ko/settings.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/it/settings.ts Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Include sound effects that were loaded in as BGM. * Removed stray placeholder localization --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: KimJeongSun <leo@atlaslabs.ai> Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.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: returntoice <dieandbecome@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com>
2024-08-25 17:40:14 +01:00
public fieldVolume: number = 1;
public seVolume: number = 1;
public uiVolume: number = 1;
public gameSpeed: integer = 1;
public damageNumbersMode: integer = 0;
2024-05-30 18:45:30 +01:00
public reroll: boolean = false;
public shopCursorTarget: number = ShopCursorTarget.REWARDS;
public showMovesetFlyout: boolean = true;
public showArenaFlyout: boolean = true;
public showTimeOfDayWidget: boolean = true;
public timeOfDayAnimation: EaseType = EaseType.NONE;
public showLevelUpStats: boolean = true;
public enableTutorials: boolean = import.meta.env.VITE_BYPASS_TUTORIAL === "1";
public enableMoveInfo: boolean = true;
public enableRetries: boolean = false;
[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 06:04:12 +01:00
public hideIvs: boolean = false;
/**
* Determines the condition for a notification should be shown for Candy Upgrades
* - 0 = 'Off'
* - 1 = 'Passives Only'
* - 2 = 'On'
*/
public candyUpgradeNotification: integer = 0;
/**
* Determines what type of notification is used for Candy Upgrades
* - 0 = 'Icon'
* - 1 = 'Animation'
*/
public candyUpgradeDisplay: integer = 0;
public moneyFormat: MoneyFormat = MoneyFormat.NORMAL;
public uiTheme: UiTheme = UiTheme.DEFAULT;
public windowType: integer = 0;
public experimentalSprites: boolean = false;
public musicPreference: number = MusicPreference.MIXED;
public moveAnimations: boolean = true;
public expGainsSpeed: ExpGainsSpeed = ExpGainsSpeed.DEFAULT;
public skipSeenDialogues: boolean = false;
/**
* Determines if the egg hatching animation should be skipped
* - 0 = Never (never skip animation)
* - 1 = Ask (ask to skip animation when hatching 2 or more eggs)
* - 2 = Always (automatically skip animation when hatching 2 or more eggs)
*/
public eggSkipPreference: number = 0;
/**
* Defines the experience gain display mode.
*
* @remarks
* The `expParty` can have several modes:
* - `0` - Default: The normal experience gain display, nothing changed.
* - `1` - Level Up Notification: Displays the level up in the small frame instead of a message.
* - `2` - Skip: No level up frame nor message.
*
* Modes `1` and `2` are still compatible with stats display, level up, new move, etc.
* @default 0 - Uses the default normal experience gain display.
*/
public expParty: ExpNotification = 0;
public hpBarSpeed: integer = 0;
public fusionPaletteSwaps: boolean = true;
public enableTouchControls: boolean = false;
public enableVibration: boolean = false;
[Enhancement] Added a bgmBar to show the name of the track once music is played (#2457) * Added a bgmBar to show the name of the track once music is played * Even more close to ability bar * It now shows. And also shows already for a couple of them a readable name * Now the queue actually works * Create locales for bgmName (bgm-bar ui) + Most of the music has only Japanese and English names But there are a number of tracks with official translations following OST commercialization * Add i18n and use it to retrieve OST names (avoids a giga switch case) + A fallback key is implemented in the case of adding tracks not referenced in the translation files, its value being just the name of the bgm itself * FormatText is now in Utils and not arena-flyout BGM Names for non-localized music will be formatted to have capitalized letters and no _ * It is now a setting. It can be even changed mid fight * Update src/ui/ability-bar.ts * Apply suggestions from code review Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/bgm-name.ts * Apply suggestions from code review Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Added the rest of the music names * Changed PMD EoS to PMD ETH in german (Pokemon Mystery Dungeon Erkundungsteam Himmel) * Due to feedback it is now "PMD ET-Himmel" * Corrected the encounter theme names (and some missed trainer class names) * Background is now a nicneslice. And it is at the top of the screen and above everything else * The bar now scales with the text. * Revert override * Update src/locales/fr/bgm-name.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * It now only appears when V is pressed (in all but starter select) * Cleared the cod eup * Update src/locales/zh_CN/bgm-name.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/bgm-name.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * The bgmBar now appears in the pause menu instead. * Should react better on settings change * To be safe this required a reload now * Update src/locales/fr/bgm-name.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/bgm-name.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Write out pokemon mystery dungeon names in german * Update src/locales/es/bgm-name.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/zh_CN/bgm-name.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/battle-scene.ts --------- Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com>
2024-06-24 16:31:38 +01:00
public showBgmBar: boolean = true;
/**
* Determines the selected battle style.
* - 0 = 'Switch'
* - 1 = 'Set' - The option to switch the active pokemon at the start of a battle will not display.
*/
public battleStyle: integer = BattleStyle.SWITCH;
/**
* Defines whether or not to show type effectiveness hints
* - true: No hints
* - false: Show hints for moves
*/
public typeHints: boolean = false;
public disableMenu: boolean = false;
public gameData: GameData;
public sessionSlotId: integer;
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-28 00:47:00 +01:00
/** PhaseQueue: dequeue/remove the first element to get the next phase */
[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 23:33:45 +01:00
public phaseQueue: Phase[];
public conditionalQueue: Array<[() => boolean, Phase]>;
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-28 00:47:00 +01:00
/** PhaseQueuePrepend: is a temp storage of what will be added to PhaseQueue */
private phaseQueuePrepend: Phase[];
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-28 00:47:00 +01:00
/** overrides default of inserting phases to end of phaseQueuePrepend array, useful or inserting Phases "out of order" */
private phaseQueuePrependSpliceIndex: integer;
private nextCommandPhaseQueue: Phase[];
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-28 00:47:00 +01: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 17:23:12 +01:00
private currentPhase: Phase | null;
private standbyPhase: Phase | null;
public field: Phaser.GameObjects.Container;
public fieldUI: Phaser.GameObjects.Container;
public charSprite: CharSprite;
public pbTray: PokeballTray;
public pbTrayEnemy: PokeballTray;
public abilityBar: AbilityBar;
public partyExpBar: PartyExpBar;
public candyBar: CandyBar;
public arenaBg: Phaser.GameObjects.Sprite;
public arenaBgTransition: Phaser.GameObjects.Sprite;
public arenaPlayer: ArenaBase;
public arenaPlayerTransition: ArenaBase;
public arenaEnemy: ArenaBase;
public arenaNextEnemy: ArenaBase;
public arena: Arena;
public gameMode: GameMode;
public score: integer;
public lockModifierTiers: boolean;
public trainer: Phaser.GameObjects.Sprite;
[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 17:23:12 +01:00
public lastEnemyTrainer: Trainer | null;
public currentBattle: Battle;
public pokeballCounts: PokeballCounts;
public money: integer;
public pokemonInfoContainer: PokemonInfoContainer;
private party: PlayerPokemon[];
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
/** Session save data that pertains to Mystery Encounters */
public mysteryEncounterSaveData: MysteryEncounterSaveData = new MysteryEncounterSaveData();
/** If the previous wave was a MysteryEncounter, tracks the object with this variable. Mostly used for visual object cleanup */
public lastMysteryEncounter?: MysteryEncounter;
/** Combined Biome and Wave count text */
private biomeWaveText: Phaser.GameObjects.Text;
private moneyText: Phaser.GameObjects.Text;
private scoreText: Phaser.GameObjects.Text;
private luckLabelText: Phaser.GameObjects.Text;
private luckText: Phaser.GameObjects.Text;
private modifierBar: ModifierBar;
private enemyModifierBar: ModifierBar;
public arenaFlyout: ArenaFlyout;
private fieldOverlay: Phaser.GameObjects.Rectangle;
private shopOverlay: Phaser.GameObjects.Rectangle;
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-28 00:47:00 +01:00
private shopOverlayShown: boolean = false;
private shopOverlayOpacity: number = .8;
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-28 00:47:00 +01: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 23:33:45 +01:00
public modifiers: PersistentModifier[];
private enemyModifiers: PersistentModifier[];
public uiContainer: Phaser.GameObjects.Container;
public ui: UI;
public seed: string;
public waveSeed: string;
public waveCycleOffset: integer;
public offsetGym: boolean;
public damageNumberHandler: DamageNumberHandler;
private spriteSparkleHandler: PokemonSpriteSparkleHandler;
public fieldSpritePipeline: FieldSpritePipeline;
public spritePipeline: SpritePipeline;
private bgm: AnySound;
[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 17:23:12 +01:00
private bgmResumeTimer: Phaser.Time.TimerEvent | null;
private bgmCache: Set<string> = new Set();
private playTimeTimer: Phaser.Time.TimerEvent;
public rngCounter: integer = 0;
public rngSeedOverride: string = "";
public rngOffset: integer = 0;
public inputMethod: string;
private infoToggles: InfoToggle[] = [];
2024-06-14 17:42:37 +01:00
public eventManager: TimedEventManager;
2024-05-24 23:01:47 +01:00
/**
2024-05-24 23:03:49 +01:00
* Allows subscribers to listen for events
*
* Current Events:
* - {@linkcode BattleSceneEventType.MOVE_USED} {@linkcode MoveUsedEvent}
* - {@linkcode BattleSceneEventType.TURN_INIT} {@linkcode TurnInitEvent}
* - {@linkcode BattleSceneEventType.TURN_END} {@linkcode TurnEndEvent}
* - {@linkcode BattleSceneEventType.NEW_ARENA} {@linkcode NewArenaEvent}
2024-05-24 23:03:49 +01:00
*/
2024-05-24 23:01:47 +01:00
public readonly eventTarget: EventTarget = new EventTarget();
constructor() {
super("battle");
this.phaseQueue = [];
this.phaseQueuePrepend = [];
this.conditionalQueue = [];
this.phaseQueuePrependSpliceIndex = -1;
this.nextCommandPhaseQueue = [];
this.eventManager = new TimedEventManager();
this.updateGameInfo();
}
loadPokemonAtlas(key: string, atlasPath: string, experimental?: boolean) {
if (experimental === undefined) {
experimental = this.experimentalSprites;
}
const variant = atlasPath.includes("variant/") || /_[0-3]$/.test(atlasPath);
if (experimental) {
experimental = this.hasExpSprite(key);
}
if (variant) {
atlasPath = atlasPath.replace("variant/", "");
}
this.load.atlas(key, `images/pokemon/${variant ? "variant/" : ""}${experimental ? "exp/" : ""}${atlasPath}.png`, `images/pokemon/${variant ? "variant/" : ""}${experimental ? "exp/" : ""}${atlasPath}.json`);
}
async preload() {
if (DEBUG_RNG) {
const scene = this;
const originalRealInRange = Phaser.Math.RND.realInRange;
Phaser.Math.RND.realInRange = function (min: number, max: number): number {
const ret = originalRealInRange.apply(this, [ min, max ]);
const args = [ "RNG", ++scene.rngCounter, ret / (max - min), `min: ${min} / max: ${max}` ];
args.push(`seed: ${scene.rngSeedOverride || scene.waveSeed || scene.seed}`);
if (scene.rngOffset) {
args.push(`offset: ${scene.rngOffset}`);
}
console.log(...args);
return ret;
};
}
populateAnims();
await this.initVariantData();
}
create() {
this.scene.remove(LoadingScene.KEY);
initGameSpeed.apply(this);
this.inputController = new InputsController(this);
this.uiInputs = new UiInputs(this, this.inputController);
this.gameData = new GameData(this);
addUiThemeOverrides(this);
this.load.setBaseURL();
this.spritePipeline = new SpritePipeline(this.game);
(this.renderer as Phaser.Renderer.WebGL.WebGLRenderer).pipelines.add("Sprite", this.spritePipeline);
this.fieldSpritePipeline = new FieldSpritePipeline(this.game);
(this.renderer as Phaser.Renderer.WebGL.WebGLRenderer).pipelines.add("FieldSprite", this.fieldSpritePipeline);
[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 23:33:45 +01:00
this.launchBattle();
}
update() {
this.ui?.update();
}
launchBattle() {
this.arenaBg = this.add.sprite(0, 0, "plains_bg");
this.arenaBg.setName("sprite-arena-bg");
this.arenaBgTransition = this.add.sprite(0, 0, "plains_bg");
this.arenaBgTransition.setName("sprite-arena-bg-transition");
[ this.arenaBgTransition, this.arenaBg ].forEach(a => {
a.setPipeline(this.fieldSpritePipeline);
a.setScale(6);
a.setOrigin(0);
a.setSize(320, 240);
});
const field = this.add.container(0, 0);
field.setName("field");
field.setScale(6);
this.field = field;
const fieldUI = this.add.container(0, this.game.canvas.height);
fieldUI.setName("field-ui");
fieldUI.setDepth(1);
fieldUI.setScale(6);
this.fieldUI = fieldUI;
const transition = this.make.rexTransitionImagePack({
x: 0,
y: 0,
scale: 6,
key: "loading_bg",
origin: { x: 0, y: 0 }
}, true);
//@ts-ignore (the defined types in the package are incromplete...)
transition.transit({
mode: "blinds",
ease: "Cubic.easeInOut",
duration: 1250,
});
transition.once("complete", () => {
transition.destroy();
});
this.add.existing(transition);
const uiContainer = this.add.container(0, 0);
uiContainer.setName("ui");
uiContainer.setDepth(2);
uiContainer.setScale(6);
this.uiContainer = uiContainer;
2023-03-28 19:54:52 +01:00
const overlayWidth = this.game.canvas.width / 6;
const overlayHeight = (this.game.canvas.height / 6) - 48;
this.fieldOverlay = this.add.rectangle(0, overlayHeight * -1 - 48, overlayWidth, overlayHeight, 0x424242);
this.fieldOverlay.setName("rect-field-overlay");
this.fieldOverlay.setOrigin(0, 0);
this.fieldOverlay.setAlpha(0);
this.fieldUI.add(this.fieldOverlay);
2023-03-28 19:54:52 +01:00
this.shopOverlay = this.add.rectangle(0, overlayHeight * -1 - 48, overlayWidth, overlayHeight, 0x070707);
this.shopOverlay.setName("rect-shop-overlay");
this.shopOverlay.setOrigin(0, 0);
this.shopOverlay.setAlpha(0);
this.fieldUI.add(this.shopOverlay);
this.modifiers = [];
this.enemyModifiers = [];
this.modifierBar = new ModifierBar(this);
this.modifierBar.setName("modifier-bar");
this.add.existing(this.modifierBar);
uiContainer.add(this.modifierBar);
2023-03-28 19:54:52 +01:00
this.enemyModifierBar = new ModifierBar(this, true);
this.enemyModifierBar.setName("enemy-modifier-bar");
this.add.existing(this.enemyModifierBar);
uiContainer.add(this.enemyModifierBar);
2023-03-28 19:54:52 +01:00
this.charSprite = new CharSprite(this);
this.charSprite.setName("sprite-char");
this.charSprite.setup();
2023-04-21 00:44:56 +01:00
this.fieldUI.add(this.charSprite);
this.pbTray = new PokeballTray(this, true);
this.pbTray.setName("pb-tray");
this.pbTray.setup();
this.pbTrayEnemy = new PokeballTray(this, false);
this.pbTrayEnemy.setName("enemy-pb-tray");
this.pbTrayEnemy.setup();
this.fieldUI.add(this.pbTray);
this.fieldUI.add(this.pbTrayEnemy);
this.abilityBar = new AbilityBar(this);
this.abilityBar.setName("ability-bar");
this.abilityBar.setup();
this.fieldUI.add(this.abilityBar);
this.partyExpBar = new PartyExpBar(this);
this.partyExpBar.setName("party-exp-bar");
this.partyExpBar.setup();
this.fieldUI.add(this.partyExpBar);
2023-04-27 06:14:15 +01:00
this.candyBar = new CandyBar(this);
this.candyBar.setName("candy-bar");
this.candyBar.setup();
this.fieldUI.add(this.candyBar);
this.biomeWaveText = addTextObject(this, (this.game.canvas.width / 6) - 2, 0, startingWave.toString(), TextStyle.BATTLE_INFO);
this.biomeWaveText.setName("text-biome-wave");
this.biomeWaveText.setOrigin(1, 0.5);
this.fieldUI.add(this.biomeWaveText);
this.moneyText = addTextObject(this, (this.game.canvas.width / 6) - 2, 0, "", TextStyle.MONEY);
this.moneyText.setName("text-money");
this.moneyText.setOrigin(1, 0.5);
this.fieldUI.add(this.moneyText);
2023-04-19 04:54:07 +01:00
this.scoreText = addTextObject(this, (this.game.canvas.width / 6) - 2, 0, "", TextStyle.PARTY, { fontSize: "54px" });
this.scoreText.setName("text-score");
this.scoreText.setOrigin(1, 0.5);
this.fieldUI.add(this.scoreText);
this.luckText = addTextObject(this, (this.game.canvas.width / 6) - 2, 0, "", TextStyle.PARTY, { fontSize: "54px" });
this.luckText.setName("text-luck");
this.luckText.setOrigin(1, 0.5);
this.luckText.setVisible(false);
this.fieldUI.add(this.luckText);
2024-03-19 04:03:41 +00:00
this.luckLabelText = addTextObject(this, (this.game.canvas.width / 6) - 2, 0, i18next.t("common:luckIndicator"), TextStyle.PARTY, { fontSize: "54px" });
this.luckLabelText.setName("text-luck-label");
this.luckLabelText.setOrigin(1, 0.5);
this.luckLabelText.setVisible(false);
this.fieldUI.add(this.luckLabelText);
this.arenaFlyout = new ArenaFlyout(this);
this.fieldUI.add(this.arenaFlyout);
this.fieldUI.moveBelow<Phaser.GameObjects.GameObject>(this.arenaFlyout, this.fieldOverlay);
this.updateUIPositions();
this.damageNumberHandler = new DamageNumberHandler();
this.spriteSparkleHandler = new PokemonSpriteSparkleHandler();
this.spriteSparkleHandler.setup(this);
2024-03-01 05:27:46 +00:00
this.pokemonInfoContainer = new PokemonInfoContainer(this, (this.game.canvas.width / 6) + 52, -(this.game.canvas.height / 6) + 66);
this.pokemonInfoContainer.setup();
this.fieldUI.add(this.pokemonInfoContainer);
2024-03-08 03:43:15 +00:00
this.party = [];
2024-03-08 03:43:15 +00:00
const loadPokemonAssets = [];
2023-03-28 19:54:52 +01:00
this.arenaPlayer = new ArenaBase(this, true);
this.arenaPlayer.setName("arena-player");
this.arenaPlayerTransition = new ArenaBase(this, true);
this.arenaPlayerTransition.setName("arena-player-transition");
this.arenaEnemy = new ArenaBase(this, false);
this.arenaEnemy.setName("arena-enemy");
this.arenaNextEnemy = new ArenaBase(this, false);
this.arenaNextEnemy.setName("arena-next-enemy");
2023-03-29 05:31:25 +01:00
this.arenaBgTransition.setVisible(false);
this.arenaPlayerTransition.setVisible(false);
this.arenaNextEnemy.setVisible(false);
2023-04-12 05:37:56 +01:00
[ this.arenaPlayer, this.arenaPlayerTransition, this.arenaEnemy, this.arenaNextEnemy ].forEach(a => {
if (a instanceof Phaser.GameObjects.Sprite) {
a.setOrigin(0, 0);
}
field.add(a);
});
2023-04-12 05:37:56 +01:00
const trainer = this.addFieldSprite(0, 0, `trainer_${this.gameData.gender === PlayerGender.FEMALE ? "f" : "m"}_back`);
trainer.setOrigin(0.5, 1);
trainer.setName("sprite-trainer");
2023-04-12 05:37:56 +01:00
field.add(trainer);
2023-03-28 19:54:52 +01:00
this.trainer = trainer;
2023-03-28 19:54:52 +01:00
this.anims.create({
key: "prompt",
frames: this.anims.generateFrameNumbers("prompt", { start: 1, end: 4 }),
frameRate: 6,
repeat: -1,
showOnStart: true
});
2023-03-28 19:54:52 +01:00
this.anims.create({
key: "tera_sparkle",
frames: this.anims.generateFrameNumbers("tera_sparkle", { start: 0, end: 12 }),
frameRate: 18,
repeat: 0,
showOnStart: true,
hideOnComplete: true
});
2023-03-28 19:54:52 +01:00
this.reset(false, false, true);
const ui = new UI(this);
this.uiContainer.add(ui);
this.ui = ui;
2023-03-28 19:54:52 +01:00
ui.setup();
2023-03-28 19:54:52 +01:00
const defaultMoves = [ Moves.TACKLE, Moves.TAIL_WHIP, Moves.FOCUS_ENERGY, Moves.STRUGGLE ];
2023-03-28 19:54:52 +01:00
Promise.all([
Promise.all(loadPokemonAssets),
initCommonAnims(this).then(() => loadCommonAnimAssets(this, true)),
Promise.all([ Moves.TACKLE, Moves.TAIL_WHIP, Moves.FOCUS_ENERGY, Moves.STRUGGLE ].map(m => initMoveAnim(this, m))).then(() => loadMoveAnimAssets(this, defaultMoves, true)),
this.initStarterColors()
]).then(() => {
this.pushPhase(new LoginPhase(this));
this.pushPhase(new TitlePhase(this));
this.shiftPhase();
});
}
2023-03-29 05:31:25 +01:00
initSession(): void {
if (this.sessionPlayTime === null) {
this.sessionPlayTime = 0;
}
if (this.lastSavePlayTime === null) {
this.lastSavePlayTime = 0;
}
2023-03-28 19:54:52 +01:00
if (this.playTimeTimer) {
this.playTimeTimer.destroy();
}
2024-01-12 01:27:50 +00:00
this.playTimeTimer = this.time.addEvent({
delay: Utils.fixedInt(1000),
repeat: -1,
callback: () => {
if (this.gameData) {
this.gameData.gameStats.playTime++;
}
if (this.sessionPlayTime !== null) {
this.sessionPlayTime++;
}
if (this.lastSavePlayTime !== null) {
this.lastSavePlayTime++;
}
}
});
this.updateBiomeWaveText();
this.updateMoneyText();
this.updateScoreText();
}
async initExpSprites(): Promise<void> {
if (expSpriteKeys.length) {
return;
}
this.cachedFetch("./exp-sprites.json").then(res => res.json()).then(keys => {
if (Array.isArray(keys)) {
expSpriteKeys.push(...keys);
}
Promise.resolve();
});
}
async initVariantData(): Promise<void> {
Object.keys(variantData).forEach(key => delete variantData[key]);
await this.cachedFetch("./images/pokemon/variant/_masterlist.json").then(res => res.json())
.then(v => {
Object.keys(v).forEach(k => variantData[k] = v[k]);
if (this.experimentalSprites) {
const expVariantData = variantData["exp"];
const traverseVariantData = (keys: string[]) => {
let variantTree = variantData;
let expTree = expVariantData;
keys.map((k: string, i: integer) => {
if (i < keys.length - 1) {
variantTree = variantTree[k];
expTree = expTree[k];
} else if (variantTree.hasOwnProperty(k) && expTree.hasOwnProperty(k)) {
if ([ "back", "female" ].includes(k)) {
traverseVariantData(keys.concat(k));
} else {
variantTree[k] = expTree[k];
}
}
});
};
Object.keys(expVariantData).forEach(ek => traverseVariantData([ ek ]));
}
Promise.resolve();
});
}
cachedFetch(url: string, init?: RequestInit): Promise<Response> {
const manifest = this.game["manifest"];
if (manifest) {
const timestamp = manifest[`/${url.replace("./", "")}`];
if (timestamp) {
url += `?t=${timestamp}`;
}
}
return fetch(url, init);
}
initStarterColors(): Promise<void> {
return new Promise(resolve => {
if (starterColors) {
return resolve();
}
this.cachedFetch("./starter-colors.json").then(res => res.json()).then(sc => {
starterColors = {};
Object.keys(sc).forEach(key => {
starterColors[key] = sc[key];
});
/*const loadPokemonAssets: Promise<void>[] = [];
for (let s of Object.keys(speciesStarters)) {
const species = getPokemonSpecies(parseInt(s));
loadPokemonAssets.push(species.loadAssets(this, false, 0, false));
}
2024-05-24 00:45:04 +01:00
Promise.all(loadPokemonAssets).then(() => {
const starterCandyColors = {};
const rgbaToHexFunc = (r, g, b) => [r, g, b].map(x => x.toString(16).padStart(2, '0')).join('');
2024-05-24 00:45:04 +01:00
for (let s of Object.keys(speciesStarters)) {
const species = getPokemonSpecies(parseInt(s));
2024-05-24 00:45:04 +01:00
starterCandyColors[species.speciesId] = species.generateCandyColors(this).map(c => rgbaToHexFunc(c[0], c[1], c[2]));
}
2024-05-24 00:45:04 +01:00
console.log(JSON.stringify(starterCandyColors));
resolve();
});*/
resolve();
});
});
}
hasExpSprite(key: string): boolean {
const keyMatch = /^pkmn__?(back__)?(shiny__)?(female__)?(\d+)(\-.*?)?(?:_[1-3])?$/g.exec(key);
[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 17:23:12 +01:00
if (!keyMatch) {
return false;
}
let k = keyMatch[4]!;
if (keyMatch[2]) {
k += "s";
}
if (keyMatch[1]) {
k += "b";
}
if (keyMatch[3]) {
k += "f";
}
if (keyMatch[5]) {
k += keyMatch[5];
}
if (!expSpriteKeys.includes(k)) {
return false;
}
return true;
}
public getPlayerParty(): PlayerPokemon[] {
return this.party;
}
/**
* @returns An array of {@linkcode PlayerPokemon} filtered from the player's party
* that are {@linkcode PlayerPokemon.isAllowedInBattle | allowed in battle}.
*/
public getPokemonAllowedInBattle(): PlayerPokemon[] {
return this.getPlayerParty().filter(p => p.isAllowedInBattle());
}
/**
* @returns The first {@linkcode PlayerPokemon} that is {@linkcode getPlayerField on the field}
* and {@linkcode PlayerPokemon.isActive is active}
* (aka {@linkcode PlayerPokemon.isAllowedInBattle is allowed in battle}),
* or `undefined` if there are no valid pokemon
* @param includeSwitching Whether a pokemon that is currently switching out is valid, default `true`
*/
public getPlayerPokemon(includeSwitching: boolean = true): PlayerPokemon | undefined {
return this.getPlayerField().find(p => p.isActive() && (includeSwitching || p.switchOutStatus === false));
}
/**
* Returns an array of PlayerPokemon of length 1 or 2 depending on if in a double battle or not.
* Does not actually check if the pokemon are on the field or not.
* @returns array of {@linkcode PlayerPokemon}
*/
public getPlayerField(): PlayerPokemon[] {
const party = this.getPlayerParty();
return party.slice(0, Math.min(party.length, this.currentBattle?.double ? 2 : 1));
}
public getEnemyParty(): EnemyPokemon[] {
return this.currentBattle?.enemyParty ?? [];
}
/**
* @returns The first {@linkcode EnemyPokemon} that is {@linkcode getEnemyField on the field}
* and {@linkcode EnemyPokemon.isActive is active}
* (aka {@linkcode EnemyPokemon.isAllowedInBattle is allowed in battle}),
* or `undefined` if there are no valid pokemon
* @param includeSwitching Whether a pokemon that is currently switching out is valid, default `true`
*/
public getEnemyPokemon(includeSwitching: boolean = true): EnemyPokemon | undefined {
return this.getEnemyField().find(p => p.isActive() && (includeSwitching || p.switchOutStatus === false));
}
/**
* Returns an array of EnemyPokemon of length 1 or 2 depending on if in a double battle or not.
* Does not actually check if the pokemon are on the field or not.
* @returns array of {@linkcode EnemyPokemon}
*/
public getEnemyField(): EnemyPokemon[] {
const party = this.getEnemyParty();
return party.slice(0, Math.min(party.length, this.currentBattle?.double ? 2 : 1));
}
public getField(activeOnly: boolean = false): Pokemon[] {
const ret = new Array(4).fill(null);
const playerField = this.getPlayerField();
const enemyField = this.getEnemyField();
ret.splice(0, playerField.length, ...playerField);
ret.splice(2, enemyField.length, ...enemyField);
return activeOnly
? ret.filter(p => p?.isActive())
: ret;
}
/**
* Used in doubles battles to redirect moves from one pokemon to another when one faints or is removed from the field
* @param removedPokemon {@linkcode Pokemon} the pokemon that is being removed from the field (flee, faint), moves to be redirected FROM
* @param allyPokemon {@linkcode Pokemon} the pokemon that will have the moves be redirected TO
*/
redirectPokemonMoves(removedPokemon: Pokemon, allyPokemon: Pokemon): void {
// failsafe: if not a double battle just return
if (this.currentBattle.double === false) {
return;
}
if (allyPokemon?.isActive(true)) {
let targetingMovePhase: MovePhase;
do {
targetingMovePhase = this.findPhase(mp => mp instanceof MovePhase && mp.targets.length === 1 && mp.targets[0] === removedPokemon.getBattlerIndex() && mp.pokemon.isPlayer() !== allyPokemon.isPlayer()) as MovePhase;
if (targetingMovePhase && targetingMovePhase.targets[0] !== allyPokemon.getBattlerIndex()) {
targetingMovePhase.targets[0] = allyPokemon.getBattlerIndex();
}
} while (targetingMovePhase);
}
}
/**
* Returns the ModifierBar of this scene, which is declared private and therefore not accessible elsewhere
* @param isEnemy Whether to return the enemy's modifier bar
* @returns {ModifierBar}
*/
getModifierBar(isEnemy?: boolean): ModifierBar {
return isEnemy ? this.enemyModifierBar : this.modifierBar;
}
// store info toggles to be accessible by the ui
addInfoToggle(infoToggle: InfoToggle): void {
this.infoToggles.push(infoToggle);
}
// return the stored info toggles; used by ui-inputs
getInfoToggles(activeOnly: boolean = false): InfoToggle[] {
return activeOnly ? this.infoToggles.filter(t => t?.isActive()) : this.infoToggles;
}
[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 17:23:12 +01:00
getPokemonById(pokemonId: integer): Pokemon | null {
const findInParty = (party: Pokemon[]) => party.find(p => p.id === pokemonId);
return (findInParty(this.getPlayerParty()) || findInParty(this.getEnemyParty())) ?? 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 17:23:12 +01:00
addPlayerPokemon(species: PokemonSpecies, level: integer, abilityIndex?: integer, formIndex?: integer, gender?: Gender, shiny?: boolean, variant?: Variant, ivs?: integer[], nature?: Nature, dataSource?: Pokemon | PokemonData, postProcess?: (playerPokemon: PlayerPokemon) => void): PlayerPokemon {
const pokemon = new PlayerPokemon(this, species, level, abilityIndex, formIndex, gender, shiny, variant, ivs, nature, dataSource);
if (postProcess) {
postProcess(pokemon);
}
pokemon.init();
return pokemon;
}
addEnemyPokemon(species: PokemonSpecies, level: integer, trainerSlot: TrainerSlot, boss: boolean = false, dataSource?: PokemonData, postProcess?: (enemyPokemon: EnemyPokemon) => void): EnemyPokemon {
if (Overrides.OPP_LEVEL_OVERRIDE > 0) {
level = Overrides.OPP_LEVEL_OVERRIDE;
}
if (Overrides.OPP_SPECIES_OVERRIDE) {
species = getPokemonSpecies(Overrides.OPP_SPECIES_OVERRIDE);
// The fact that a Pokemon is a boss or not can change based on its Species and level
boss = this.getEncounterBossSegments(this.currentBattle.waveIndex, level, species) > 1;
}
const pokemon = new EnemyPokemon(this, species, level, trainerSlot, boss, dataSource);
if (Overrides.OPP_FUSION_OVERRIDE) {
pokemon.generateFusionSpecies();
}
overrideModifiers(this, false);
overrideHeldItems(this, pokemon, false);
if (boss && !dataSource) {
const secondaryIvs = Utils.getIvsFromId(Utils.randSeedInt(4294967296));
for (let s = 0; s < pokemon.ivs.length; s++) {
pokemon.ivs[s] = Math.round(Phaser.Math.Linear(Math.min(pokemon.ivs[s], secondaryIvs[s]), Math.max(pokemon.ivs[s], secondaryIvs[s]), 0.75));
}
}
if (postProcess) {
postProcess(pokemon);
}
for (let i = 0; i < pokemon.ivs.length; i++) {
if (OPP_IVS_OVERRIDE_VALIDATED[i] > -1) {
pokemon.ivs[i] = OPP_IVS_OVERRIDE_VALIDATED[i];
}
}
pokemon.init();
return pokemon;
}
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
/**
* Removes a {@linkcode PlayerPokemon} from the party, and clears modifiers for that Pokemon's id
* Useful for MEs/Challenges that remove Pokemon from the player party temporarily or permanently
* @param pokemon
* @param destroy Default true. If true, will destroy the {@linkcode PlayerPokemon} after removing
*/
removePokemonFromPlayerParty(pokemon: PlayerPokemon, destroy: boolean = true) {
if (!pokemon) {
return;
}
const partyIndex = this.party.indexOf(pokemon);
this.party.splice(partyIndex, 1);
if (destroy) {
this.field.remove(pokemon, true);
pokemon.destroy();
}
this.updateModifiers(true);
}
addPokemonIcon(pokemon: Pokemon, x: number, y: number, originX: number = 0.5, originY: number = 0.5, ignoreOverride: boolean = false): Phaser.GameObjects.Container {
const container = this.add.container(x, y);
container.setName(`${pokemon.name}-icon`);
2024-05-24 00:45:04 +01:00
const icon = this.add.sprite(0, 0, pokemon.getIconAtlasKey(ignoreOverride));
icon.setName(`sprite-${pokemon.name}-icon`);
icon.setFrame(pokemon.getIconId(true));
// Temporary fix to show pokemon's default icon if variant icon doesn't exist
if (icon.frame.name !== pokemon.getIconId(true)) {
console.log(`${pokemon.name}'s variant icon does not exist. Replacing with default.`);
const temp = pokemon.shiny;
pokemon.shiny = false;
icon.setTexture(pokemon.getIconAtlasKey(ignoreOverride));
icon.setFrame(pokemon.getIconId(true));
pokemon.shiny = temp;
}
icon.setOrigin(0.5, 0);
container.add(icon);
if (pokemon.isFusion()) {
const fusionIcon = this.add.sprite(0, 0, pokemon.getFusionIconAtlasKey(ignoreOverride));
fusionIcon.setName("sprite-fusion-icon");
fusionIcon.setOrigin(0.5, 0);
fusionIcon.setFrame(pokemon.getFusionIconId(true));
const originalWidth = icon.width;
const originalHeight = icon.height;
const originalFrame = icon.frame;
const iconHeight = (icon.frame.cutHeight <= fusionIcon.frame.cutHeight ? Math.ceil : Math.floor)((icon.frame.cutHeight + fusionIcon.frame.cutHeight) / 4);
2024-05-24 00:45:04 +01:00
// Inefficient, but for some reason didn't work with only the unique properties as part of the name
const iconFrameId = `${icon.frame.name}f${fusionIcon.frame.name}`;
if (!icon.frame.texture.has(iconFrameId)) {
icon.frame.texture.add(iconFrameId, icon.frame.sourceIndex, icon.frame.cutX, icon.frame.cutY, icon.frame.cutWidth, iconHeight);
}
icon.setFrame(iconFrameId);
fusionIcon.y = icon.frame.cutHeight;
const originalFusionFrame = fusionIcon.frame;
const fusionIconY = fusionIcon.frame.cutY + icon.frame.cutHeight;
const fusionIconHeight = fusionIcon.frame.cutHeight - icon.frame.cutHeight;
// Inefficient, but for some reason didn't work with only the unique properties as part of the name
const fusionIconFrameId = `${fusionIcon.frame.name}f${icon.frame.name}`;
if (!fusionIcon.frame.texture.has(fusionIconFrameId)) {
fusionIcon.frame.texture.add(fusionIconFrameId, fusionIcon.frame.sourceIndex, fusionIcon.frame.cutX, fusionIconY, fusionIcon.frame.cutWidth, fusionIconHeight);
}
fusionIcon.setFrame(fusionIconFrameId);
const frameY = (originalFrame.y + originalFusionFrame.y) / 2;
icon.frame.y = fusionIcon.frame.y = frameY;
container.add(fusionIcon);
if (originX !== 0.5) {
container.x -= originalWidth * (originX - 0.5);
}
if (originY !== 0) {
container.y -= (originalHeight) * originY;
}
} else {
if (originX !== 0.5) {
container.x -= icon.width * (originX - 0.5);
}
if (originY !== 0) {
container.y -= icon.height * originY;
}
}
return container;
}
setSeed(seed: string): void {
this.seed = seed;
this.rngCounter = 0;
this.waveCycleOffset = this.getGeneratedWaveCycleOffset();
this.offsetGym = this.gameMode.isClassic && this.getGeneratedOffsetGym();
}
/**
* Generates a random number using the current battle's seed
*
* This calls {@linkcode Battle.randSeedInt}(`scene`, {@linkcode range}, {@linkcode min}) in `src/battle.ts`
* which calls {@linkcode Utils.randSeedInt randSeedInt}({@linkcode range}, {@linkcode min}) in `src/utils.ts`
*
* @param range How large of a range of random numbers to choose from. If {@linkcode range} <= 1, returns {@linkcode min}
* @param min The minimum integer to pick, default `0`
* @returns A random integer between {@linkcode min} and ({@linkcode min} + {@linkcode range} - 1)
*/
randBattleSeedInt(range: integer, min: integer = 0): integer {
return this.currentBattle?.randSeedInt(this, range, min);
}
reset(clearScene: boolean = false, clearData: boolean = false, reloadI18n: boolean = false): void {
if (clearData) {
this.gameData = new GameData(this);
}
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 06:07:23 +01:00
this.gameMode = getGameMode(GameModes.CLASSIC);
2024-05-24 00:45:04 +01:00
this.disableMenu = false;
this.score = 0;
this.money = 0;
this.lockModifierTiers = false;
this.pokeballCounts = Object.fromEntries(Utils.getEnumValues(PokeballType).filter(p => p <= PokeballType.MASTER_BALL).map(t => [ t, 0 ]));
this.pokeballCounts[PokeballType.POKEBALL] += 5;
if (Overrides.POKEBALL_OVERRIDE.active) {
this.pokeballCounts = Overrides.POKEBALL_OVERRIDE.pokeballs;
}
this.modifiers = [];
this.enemyModifiers = [];
this.modifierBar.removeAll(true);
this.enemyModifierBar.removeAll(true);
for (const p of this.getPlayerParty()) {
p.destroy();
}
this.party = [];
for (const p of this.getEnemyParty()) {
p.destroy();
}
2024-05-24 00:45:04 +01:00
// If this is a ME, clear any residual visual sprites before reloading
if (this.currentBattle?.mysteryEncounter?.introVisuals) {
this.field.remove(this.currentBattle.mysteryEncounter?.introVisuals, 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 17:23:12 +01:00
//@ts-ignore - allowing `null` for currentBattle causes a lot of trouble
this.currentBattle = null; // TODO: resolve ts-ignore
// Reset RNG after end of game or save & quit.
// This needs to happen after clearing this.currentBattle or the seed will be affected by the last wave played
this.setSeed(Overrides.SEED_OVERRIDE || Utils.randomString(24));
console.log("Seed:", this.seed);
this.resetSeed();
this.biomeWaveText.setText(startingWave.toString());
this.biomeWaveText.setVisible(false);
this.updateMoneyText();
this.moneyText.setVisible(false);
this.updateScoreText();
this.scoreText.setVisible(false);
2024-03-22 13:16:49 +00:00
[ this.luckLabelText, this.luckText ].map(t => t.setVisible(false));
this.newArena(Overrides.STARTING_BIOME_OVERRIDE || Biome.TOWN);
this.field.setVisible(true);
this.arenaBgTransition.setPosition(0, 0);
this.arenaPlayer.setPosition(300, 0);
this.arenaPlayerTransition.setPosition(0, 0);
[ this.arenaEnemy, this.arenaNextEnemy ].forEach(a => a.setPosition(-280, 0));
this.arenaNextEnemy.setVisible(false);
this.arena.init();
this.trainer.setTexture(`trainer_${this.gameData.gender === PlayerGender.FEMALE ? "f" : "m"}_back`);
this.trainer.setPosition(406, 186);
this.trainer.setVisible(true);
2024-05-24 00:45:04 +01:00
this.mysteryEncounterSaveData = new MysteryEncounterSaveData();
this.updateGameInfo();
if (reloadI18n) {
const localizable: Localizable[] = [
...allSpecies,
...allMoves,
...allAbilities,
...Utils.getEnumValues(ModifierPoolType).map(mpt => getModifierPoolForType(mpt)).map(mp => Object.values(mp).flat().map(mt => mt.modifierType).filter(mt => "localize" in mt).map(lpb => lpb as unknown as Localizable)).flat()
];
for (const item of localizable) {
item.localize();
}
}
if (clearScene) {
// Reload variant data in case sprite set has changed
this.initVariantData();
this.fadeOutBgm(250, false);
this.tweens.add({
targets: [ this.uiContainer ],
alpha: 0,
duration: 250,
ease: "Sine.easeInOut",
onComplete: () => {
this.clearPhaseQueue();
this.children.removeAll(true);
this.game.domContainer.innerHTML = "";
this.launchBattle();
}
});
}
}
getDoubleBattleChance(newWaveIndex: number, playerField: PlayerPokemon[]) {
const doubleChance = new Utils.IntegerHolder(newWaveIndex % 10 === 0 ? 32 : 8);
this.applyModifiers(DoubleBattleChanceBoosterModifier, true, doubleChance);
playerField.forEach(p => applyAbAttrs(DoubleBattleChanceAbAttr, p, null, false, doubleChance));
return Math.max(doubleChance.value, 1);
}
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
newBattle(waveIndex?: integer, battleType?: BattleType, trainerData?: TrainerData, double?: boolean, mysteryEncounterType?: MysteryEncounterType): Battle | null {
[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 23:33:45 +01:00
const _startingWave = Overrides.STARTING_WAVE_OVERRIDE || startingWave;
const newWaveIndex = waveIndex || ((this.currentBattle?.waveIndex || (_startingWave - 1)) + 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 17:23:12 +01:00
let newDouble: boolean | undefined;
let newBattleType: BattleType;
[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 17:23:12 +01:00
let newTrainer: Trainer | 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 17:23:12 +01:00
let battleConfig: FixedBattleConfig | null = null;
this.resetSeed(newWaveIndex);
const playerField = this.getPlayerField();
2024-05-24 00:45:04 +01: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 06:07:23 +01:00
if (this.gameMode.isFixedBattle(newWaveIndex) && trainerData === undefined) {
battleConfig = this.gameMode.getFixedBattle(newWaveIndex);
newDouble = battleConfig.double;
newBattleType = battleConfig.battleType;
[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 17:23:12 +01:00
this.executeWithSeedOffset(() => newTrainer = battleConfig?.getTrainer(this), (battleConfig.seedOffsetWaveIndex || newWaveIndex) << 8);
if (newTrainer) {
this.field.add(newTrainer);
}
} else {
if (!this.gameMode.hasTrainers) {
newBattleType = BattleType.WILD;
} else if (battleType === undefined) {
newBattleType = this.gameMode.isWaveTrainer(newWaveIndex, this.arena) ? BattleType.TRAINER : BattleType.WILD;
} else {
newBattleType = battleType;
}
if (newBattleType === BattleType.TRAINER) {
const trainerType = this.arena.randomTrainerType(newWaveIndex);
let doubleTrainer = false;
if (trainerConfigs[trainerType].doubleOnly) {
doubleTrainer = true;
} else if (trainerConfigs[trainerType].hasDouble) {
doubleTrainer = !Utils.randSeedInt(this.getDoubleBattleChance(newWaveIndex, playerField));
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-28 00:47:00 +01:00
// Add a check that special trainers can't be double except for tate and liza - they should use the normal double chance
if (trainerConfigs[trainerType].trainerTypeDouble && ![ TrainerType.TATE, TrainerType.LIZA ].includes(trainerType)) {
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-28 00:47:00 +01:00
doubleTrainer = false;
}
}
const variant = doubleTrainer ? TrainerVariant.DOUBLE : (Utils.randSeedInt(2) ? TrainerVariant.FEMALE : TrainerVariant.DEFAULT);
newTrainer = trainerData !== undefined ? trainerData.toTrainer(this) : new Trainer(this, trainerType, variant);
this.field.add(newTrainer);
}
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
// Check for mystery encounter
// Can only occur in place of a standard (non-boss) wild battle, waves 10-180
if (this.isWaveMysteryEncounter(newBattleType, newWaveIndex) || newBattleType === BattleType.MYSTERY_ENCOUNTER) {
2024-09-22 18:53:18 +01:00
newBattleType = BattleType.MYSTERY_ENCOUNTER;
// Reset to base spawn weight
2024-09-22 18:53:18 +01:00
this.mysteryEncounterSaveData.encounterSpawnChance = BASE_MYSTERY_ENCOUNTER_SPAWN_WEIGHT;
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
}
}
if (double === undefined && newWaveIndex > 1) {
if (newBattleType === BattleType.WILD && !this.gameMode.isWaveFinal(newWaveIndex)) {
newDouble = !Utils.randSeedInt(this.getDoubleBattleChance(newWaveIndex, playerField));
} else if (newBattleType === 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 17:23:12 +01:00
newDouble = newTrainer?.variant === TrainerVariant.DOUBLE;
}
} else if (!battleConfig) {
newDouble = !!double;
}
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-28 00:47:00 +01:00
if (Overrides.BATTLE_TYPE_OVERRIDE === "double") {
newDouble = true;
}
/* Override battles into single only if not fighting with trainers */
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-28 00:47:00 +01:00
if (newBattleType !== BattleType.TRAINER && Overrides.BATTLE_TYPE_OVERRIDE === "single") {
[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 23:33:45 +01:00
newDouble = false;
}
const lastBattle = this.currentBattle;
if (lastBattle?.double && !newDouble) {
this.tryRemovePhase(p => p instanceof SwitchPhase);
}
const maxExpLevel = this.getMaxExpLevel();
this.lastEnemyTrainer = lastBattle?.trainer ?? null;
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
this.lastMysteryEncounter = lastBattle?.mysteryEncounter;
this.executeWithSeedOffset(() => {
this.currentBattle = new Battle(this.gameMode, newWaveIndex, newBattleType, newTrainer, newDouble);
}, newWaveIndex << 3, this.waveSeed);
this.currentBattle.incrementTurn(this);
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
if (newBattleType === BattleType.MYSTERY_ENCOUNTER) {
// Disable double battle on mystery encounters (it may be re-enabled as part of encounter)
this.currentBattle.double = false;
2024-09-22 18:53:18 +01:00
// Will generate the actual Mystery Encounter during NextEncounterPhase, to ensure it uses proper biome
this.currentBattle.mysteryEncounterType = mysteryEncounterType;
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
}
//this.pushPhase(new TrainerMessageTestPhase(this, TrainerType.RIVAL, TrainerType.RIVAL_2, TrainerType.RIVAL_3, TrainerType.RIVAL_4, TrainerType.RIVAL_5, TrainerType.RIVAL_6));
if (!waveIndex && lastBattle) {
const isWaveIndexMultipleOfTen = !(lastBattle.waveIndex % 10);
const isEndlessOrDaily = this.gameMode.hasShortBiomes || this.gameMode.isDaily;
const isEndlessFifthWave = this.gameMode.hasShortBiomes && (lastBattle.waveIndex % 5) === 0;
const isWaveIndexMultipleOfFiftyMinusOne = (lastBattle.waveIndex % 50) === 49;
const isNewBiome = isWaveIndexMultipleOfTen || isEndlessFifthWave || (isEndlessOrDaily && isWaveIndexMultipleOfFiftyMinusOne);
2024-10-04 06:08:31 +01:00
const resetArenaState = isNewBiome || [ BattleType.TRAINER, BattleType.MYSTERY_ENCOUNTER ].includes(this.currentBattle.battleType) || this.currentBattle.battleSpec === BattleSpec.FINAL_BOSS;
this.getEnemyParty().forEach(enemyPokemon => enemyPokemon.destroy());
this.trySpreadPokerus();
if (!isNewBiome && (newWaveIndex % 10) === 5) {
this.arena.updatePoolsForTimeOfDay();
}
if (resetArenaState) {
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-28 00:47:00 +01:00
this.arena.resetArenaEffects();
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
playerField.forEach((pokemon, p) => {
if (pokemon.isOnField()) {
this.pushPhase(new ReturnPhase(this, p));
}
});
for (const pokemon of this.getPlayerParty()) {
pokemon.resetBattleData();
applyPostBattleInitAbAttrs(PostBattleInitAbAttr, pokemon);
}
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
if (!this.trainer.visible) {
this.pushPhase(new ShowTrainerPhase(this));
}
}
for (const pokemon of this.getPlayerParty()) {
this.triggerPokemonFormChange(pokemon, SpeciesFormChangeTimeOfDayTrigger);
}
if (!this.gameMode.hasRandomBiomes && !isNewBiome) {
this.pushPhase(new NextEncounterPhase(this));
} else {
this.pushPhase(new SelectBiomePhase(this));
this.pushPhase(new NewBiomeEncounterPhase(this));
const newMaxExpLevel = this.getMaxExpLevel();
if (newMaxExpLevel > maxExpLevel) {
this.pushPhase(new LevelCapPhase(this));
}
}
}
2024-05-24 00:45:04 +01:00
return this.currentBattle;
}
newArena(biome: Biome): Arena {
this.arena = new Arena(this, biome, Biome[biome].toLowerCase());
this.eventTarget.dispatchEvent(new NewArenaEvent());
this.arenaBg.pipelineData = { terrainColorRatio: this.arena.getBgTerrainColorRatioForBiome() };
return this.arena;
}
updateFieldScale(): Promise<void> {
return new Promise(resolve => {
const fieldScale = Math.floor(Math.pow(1 / this.getField(true)
.map(p => p.getSpriteScale())
.reduce((highestScale: number, scale: number) => highestScale = Math.max(scale, highestScale), 0), 0.7) * 40
) / 40;
this.setFieldScale(fieldScale).then(() => resolve());
});
}
setFieldScale(scale: number, instant: boolean = false): Promise<void> {
return new Promise(resolve => {
scale *= 6;
if (this.field.scale === scale) {
return resolve();
}
const defaultWidth = this.arenaBg.width * 6;
const defaultHeight = 132 * 6;
const scaledWidth = this.arenaBg.width * scale;
const scaledHeight = 132 * scale;
this.tweens.add({
targets: this.field,
scale: scale,
x: (defaultWidth - scaledWidth) / 2,
y: defaultHeight - scaledHeight,
duration: !instant ? Utils.fixedInt(Math.abs(this.field.scale - scale) * 200) : 0,
ease: "Sine.easeInOut",
onComplete: () => resolve()
});
});
}
getSpeciesFormIndex(species: PokemonSpecies, gender?: Gender, nature?: Nature, ignoreArena?: boolean): integer {
if (!species.forms?.length) {
return 0;
}
switch (species.speciesId) {
case Species.UNOWN:
case Species.SHELLOS:
case Species.GASTRODON:
case Species.BASCULIN:
case Species.DEERLING:
case Species.SAWSBUCK:
case Species.FROAKIE:
case Species.FROGADIER:
case Species.SCATTERBUG:
case Species.SPEWPA:
case Species.VIVILLON:
case Species.FLABEBE:
case Species.FLOETTE:
case Species.FLORGES:
case Species.FURFROU:
case Species.PUMPKABOO:
case Species.GOURGEIST:
case Species.ORICORIO:
case Species.MAGEARNA:
case Species.ZARUDE:
case Species.SQUAWKABILLY:
case Species.TATSUGIRI:
case Species.PALDEA_TAUROS:
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
return Utils.randSeedInt(species.forms.length);
case Species.PIKACHU:
return Utils.randSeedInt(8);
case Species.EEVEE:
return Utils.randSeedInt(2);
case Species.GRENINJA:
return Utils.randSeedInt(2);
case Species.ZYGARDE:
return Utils.randSeedInt(4);
case Species.MINIOR:
return Utils.randSeedInt(7);
case Species.ALCREMIE:
return Utils.randSeedInt(9);
case Species.MEOWSTIC:
case Species.INDEEDEE:
case Species.BASCULEGION:
case Species.OINKOLOGNE:
return gender === Gender.FEMALE ? 1 : 0;
case Species.TOXTRICITY:
const lowkeyNatures = [ Nature.LONELY, Nature.BOLD, Nature.RELAXED, Nature.TIMID, Nature.SERIOUS, Nature.MODEST, Nature.MILD, Nature.QUIET, Nature.BASHFUL, Nature.CALM, Nature.GENTLE, Nature.CAREFUL ];
if (nature !== undefined && lowkeyNatures.indexOf(nature) > -1) {
return 1;
}
return 0;
case Species.GIMMIGHOUL:
// Chest form can only be found in Mysterious Chest Encounter, if this is a game mode with MEs
if (this.gameMode.hasMysteryEncounters) {
return 1; // Wandering form
} else {
return Utils.randSeedInt(species.forms.length);
}
}
if (ignoreArena) {
switch (species.speciesId) {
case Species.BURMY:
case Species.WORMADAM:
case Species.ROTOM:
case Species.LYCANROC:
return Utils.randSeedInt(species.forms.length);
}
return 0;
}
return this.arena.getSpeciesFormIndex(species);
}
private getGeneratedOffsetGym(): boolean {
let ret = false;
this.executeWithSeedOffset(() => {
ret = !Utils.randSeedInt(2);
}, 0, this.seed.toString());
return ret;
}
private getGeneratedWaveCycleOffset(): integer {
let ret = 0;
this.executeWithSeedOffset(() => {
ret = Utils.randSeedInt(8) * 5;
}, 0, this.seed.toString());
return ret;
}
getEncounterBossSegments(waveIndex: integer, level: integer, species?: PokemonSpecies, forceBoss: boolean = false): integer {
if (Overrides.OPP_HEALTH_SEGMENTS_OVERRIDE > 1) {
return Overrides.OPP_HEALTH_SEGMENTS_OVERRIDE;
} else if (Overrides.OPP_HEALTH_SEGMENTS_OVERRIDE === 1) {
// The rest of the code expects to be returned 0 and not 1 if the enemy is not a boss
return 0;
}
if (this.gameMode.isDaily && this.gameMode.isWaveFinal(waveIndex)) {
return 5;
}
[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 17:23:12 +01:00
let isBoss: boolean | undefined;
if (forceBoss || (species && (species.subLegendary || species.legendary || species.mythical))) {
isBoss = true;
} else {
this.executeWithSeedOffset(() => {
isBoss = waveIndex % 10 === 0 || (this.gameMode.hasRandomBosses && Utils.randSeedInt(100) < Math.min(Math.max(Math.ceil((waveIndex - 250) / 50), 0) * 2, 30));
}, waveIndex << 2);
}
if (!isBoss) {
return 0;
}
let ret: integer = 2;
if (level >= 100) {
ret++;
}
if (species) {
if (species.baseTotal >= 670) {
ret++;
}
}
ret += Math.floor(waveIndex / 250);
return ret;
}
trySpreadPokerus(): void {
const party = this.getPlayerParty();
const infectedIndexes: integer[] = [];
const spread = (index: number, spreadTo: number) => {
const partyMember = party[index + spreadTo];
if (!partyMember.pokerus && !Utils.randSeedInt(10)) {
partyMember.pokerus = true;
infectedIndexes.push(index + spreadTo);
}
};
party.forEach((pokemon, p) => {
if (!pokemon.pokerus || infectedIndexes.indexOf(p) > -1) {
return;
}
2024-05-24 00:45:04 +01:00
this.executeWithSeedOffset(() => {
if (p) {
spread(p, -1);
}
if (p < party.length - 1) {
spread(p, 1);
}
}, this.currentBattle.waveIndex + (p << 8));
});
}
resetSeed(waveIndex?: integer): void {
const wave = waveIndex || this.currentBattle?.waveIndex || 0;
this.waveSeed = Utils.shiftCharCodes(this.seed, wave);
Phaser.Math.RND.sow([ this.waveSeed ]);
console.log("Wave Seed:", this.waveSeed, wave);
this.rngCounter = 0;
}
executeWithSeedOffset(func: Function, offset: integer, seedOverride?: string): void {
if (!func) {
return;
}
const tempRngCounter = this.rngCounter;
const tempRngOffset = this.rngOffset;
const tempRngSeedOverride = this.rngSeedOverride;
const state = Phaser.Math.RND.state();
Phaser.Math.RND.sow([ Utils.shiftCharCodes(seedOverride || this.seed, offset) ]);
this.rngCounter = 0;
this.rngOffset = offset;
this.rngSeedOverride = seedOverride || "";
func();
Phaser.Math.RND.state(state);
this.rngCounter = tempRngCounter;
this.rngOffset = tempRngOffset;
this.rngSeedOverride = tempRngSeedOverride;
}
addFieldSprite(x: number, y: number, texture: string | Phaser.Textures.Texture, frame?: string | number, terrainColorRatio: number = 0): Phaser.GameObjects.Sprite {
const ret = this.add.sprite(x, y, texture, frame);
ret.setPipeline(this.fieldSpritePipeline);
if (terrainColorRatio) {
ret.pipelineData["terrainColorRatio"] = terrainColorRatio;
}
return ret;
}
addPokemonSprite(pokemon: Pokemon, x: number, y: number, texture: string | Phaser.Textures.Texture, frame?: string | number, hasShadow: boolean = false, ignoreOverride: boolean = false): Phaser.GameObjects.Sprite {
const ret = this.addFieldSprite(x, y, texture, frame);
this.initPokemonSprite(ret, pokemon, hasShadow, ignoreOverride);
return ret;
}
initPokemonSprite(sprite: Phaser.GameObjects.Sprite, pokemon?: Pokemon, hasShadow: boolean = false, ignoreOverride: boolean = false): Phaser.GameObjects.Sprite {
sprite.setPipeline(this.spritePipeline, { tone: [ 0.0, 0.0, 0.0, 0.0 ], hasShadow: hasShadow, ignoreOverride: ignoreOverride, teraColor: pokemon ? getTypeRgb(pokemon.getTeraType()) : undefined });
this.spriteSparkleHandler.add(sprite);
return sprite;
}
moveBelowOverlay<T extends Phaser.GameObjects.GameObject>(gameObject: T) {
this.fieldUI.moveBelow<any>(gameObject, this.fieldOverlay);
}
processInfoButton(pressed: boolean): void {
this.arenaFlyout.toggleFlyout(pressed);
}
showFieldOverlay(duration: integer): Promise<void> {
return new Promise(resolve => {
this.tweens.add({
targets: this.fieldOverlay,
alpha: 0.5,
ease: "Sine.easeOut",
duration: duration,
onComplete: () => resolve()
});
});
}
hideFieldOverlay(duration: integer): Promise<void> {
return new Promise(resolve => {
this.tweens.add({
targets: this.fieldOverlay,
alpha: 0,
duration: duration,
ease: "Cubic.easeIn",
onComplete: () => resolve()
});
});
}
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-28 00:47:00 +01:00
updateShopOverlayOpacity(value: number): void {
this.shopOverlayOpacity = value;
if (this.shopOverlayShown) {
this.shopOverlay.setAlpha(this.shopOverlayOpacity);
}
}
showShopOverlay(duration: integer): Promise<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-28 00:47:00 +01:00
this.shopOverlayShown = true;
return new Promise(resolve => {
this.tweens.add({
targets: this.shopOverlay,
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-28 00:47:00 +01:00
alpha: this.shopOverlayOpacity,
ease: "Sine.easeOut",
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-28 00:47:00 +01:00
duration,
onComplete: () => resolve()
});
});
}
hideShopOverlay(duration: integer): Promise<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-28 00:47:00 +01:00
this.shopOverlayShown = false;
return new Promise(resolve => {
this.tweens.add({
targets: this.shopOverlay,
alpha: 0,
duration: duration,
ease: "Cubic.easeIn",
onComplete: () => resolve()
});
});
}
showEnemyModifierBar(): void {
this.enemyModifierBar.setVisible(true);
}
hideEnemyModifierBar(): void {
this.enemyModifierBar.setVisible(false);
}
updateBiomeWaveText(): void {
const isBoss = !(this.currentBattle.waveIndex % 10);
const biomeString: string = getBiomeName(this.arena.biomeType);
this.fieldUI.moveAbove(this.biomeWaveText, this.luckText);
this.biomeWaveText.setText( biomeString + " - " + this.currentBattle.waveIndex.toString());
this.biomeWaveText.setColor(!isBoss ? "#ffffff" : "#f89890");
this.biomeWaveText.setShadowColor(!isBoss ? "#636363" : "#984038");
this.biomeWaveText.setVisible(true);
}
updateMoneyText(forceVisible: boolean = true): void {
if (this.money === undefined) {
return;
}
const formattedMoney = Utils.formatMoney(this.moneyFormat, this.money);
this.moneyText.setText(i18next.t("battleScene:moneyOwned", { formattedMoney }));
2024-05-30 18:45:30 +01:00
this.fieldUI.moveAbove(this.moneyText, this.luckText);
if (forceVisible) {
this.moneyText.setVisible(true);
}
}
animateMoneyChanged(positiveChange: boolean): void {
if (this.tweens.getTweensOf(this.moneyText).length > 0) {
return;
}
const deltaScale = this.moneyText.scale * 0.14 * (positiveChange ? 1 : -1);
this.moneyText.setShadowColor(positiveChange ? "#008000" : "#FF0000");
this.tweens.add({
targets: this.moneyText,
duration: 250,
scale: this.moneyText.scale + deltaScale,
loop: 0,
yoyo: true,
onComplete: (_) => this.moneyText.setShadowColor(getTextColor(TextStyle.MONEY, true)),
});
}
updateScoreText(): void {
this.scoreText.setText(`Score: ${this.score.toString()}`);
this.scoreText.setVisible(this.gameMode.isDaily);
}
[Daily] Daily standardization (#3776) * Disable Luck in Daily Runs If the Game Mode is Daily Run, the player's Luck is set to 0, and the Luck value is hidden. * Give free map in daily Adds a Map to the player's pool of starting items for Daily Runs. * Disable Eviolite in Daily Runs Disables Eviolite spawning in Daily Run mode. * Write shop test and add new overrides Adds new overrides that allow you to force content to be locked or unlocked These overrides were also added to the OverridesHelper to make them available to tests Adds a new check function for content unlocks, which returns `true` if it is overrode to be unlocked, `false` if it is overrode to be locked, and the unlock data mapped to a Boolean otherwise All existing checks (other than the ones that involve actually unlocking things) for unlockables have been changed to use this Added a pair of new exporting booleans, specifically for my test, that check if Eviolite or Mini Black Hole are in the loot table * Prevent shinies from altering runs Places variant rolls inside of an ExecuteWithSeedOffset block, using the current floor's RNG seed as the seed and the Pokémon's ID as the offset. --------- Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Amani H. <109637146+xsn34kzx@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com>
2024-09-26 09:39:59 +01:00
/**
* Displays the current luck value.
* @param duration The time for this label to fade in, if it is not already visible.
*/
updateAndShowText(duration: number): void {
const labels = [ this.luckLabelText, this.luckText ];
2024-05-30 18:45:30 +01:00
labels.forEach(t => t.setAlpha(0));
const luckValue = getPartyLuckValue(this.getPlayerParty());
this.luckText.setText(getLuckString(luckValue));
if (luckValue < 14) {
this.luckText.setTint(getLuckTextTint(luckValue));
} else {
this.luckText.setTint(0xffef5c, 0x47ff69, 0x6b6bff, 0xff6969);
}
this.luckLabelText.setX((this.game.canvas.width / 6) - 2 - (this.luckText.displayWidth + 2));
this.tweens.add({
targets: labels,
duration: duration,
2024-05-30 18:45:30 +01:00
alpha: 1,
onComplete: () => {
labels.forEach(t => t.setVisible(true));
}
});
}
hideLuckText(duration: integer): void {
2024-05-30 18:45:30 +01:00
if (this.reroll) {
return;
}
const labels = [ this.luckLabelText, this.luckText ];
this.tweens.add({
targets: labels,
duration: duration,
alpha: 0,
onComplete: () => {
2024-05-30 18:45:30 +01:00
labels.forEach(l => l.setVisible(false));
}
});
}
updateUIPositions(): void {
const enemyModifierCount = this.enemyModifiers.filter(m => m.isIconVisible(this)).length;
const biomeWaveTextHeight = this.biomeWaveText.getBottomLeft().y - this.biomeWaveText.getTopLeft().y;
this.biomeWaveText.setY(
-(this.game.canvas.height / 6) + (enemyModifierCount ? enemyModifierCount <= 12 ? 15 : 24 : 0) + (biomeWaveTextHeight / 2)
);
this.moneyText.setY(this.biomeWaveText.y + 10);
this.scoreText.setY(this.moneyText.y + 10);
[ this.luckLabelText, this.luckText ].map(l => l.setY((this.scoreText.visible ? this.scoreText : this.moneyText).y + 10));
const offsetY = (this.scoreText.visible ? this.scoreText : this.moneyText).y + 15;
this.partyExpBar.setY(offsetY);
this.candyBar.setY(offsetY + 15);
this.ui?.achvBar.setY(this.game.canvas.height / 6 + offsetY);
}
/**
* Pushes all {@linkcode Phaser.GameObjects.Text} objects in the top right to the bottom of the canvas
*/
sendTextToBack(): void {
this.fieldUI.sendToBack(this.biomeWaveText);
this.fieldUI.sendToBack(this.moneyText);
this.fieldUI.sendToBack(this.scoreText);
}
addFaintedEnemyScore(enemy: EnemyPokemon): void {
let scoreIncrease = enemy.getSpeciesForm().getBaseExp() * (enemy.level / this.getMaxExpLevel()) * ((enemy.ivs.reduce((iv: integer, total: integer) => total += iv, 0) / 93) * 0.2 + 0.8);
this.findModifiers(m => m instanceof PokemonHeldItemModifier && m.pokemonId === enemy.id, false).map(m => scoreIncrease *= (m as PokemonHeldItemModifier).getScoreMultiplier());
if (enemy.isBoss()) {
scoreIncrease *= Math.sqrt(enemy.bossSegments);
}
this.currentBattle.battleScore += Math.ceil(scoreIncrease);
}
getMaxExpLevel(ignoreLevelCap?: boolean): integer {
if (ignoreLevelCap) {
return Number.MAX_SAFE_INTEGER;
}
const waveIndex = Math.ceil((this.currentBattle?.waveIndex || 1) / 10) * 10;
const difficultyWaveIndex = this.gameMode.getWaveForDifficulty(waveIndex);
const baseLevel = (1 + difficultyWaveIndex / 2 + Math.pow(difficultyWaveIndex / 25, 2)) * 1.2;
return Math.ceil(baseLevel / 2) * 2 + 2;
}
randomSpecies(waveIndex: integer, level: integer, fromArenaPool?: boolean, speciesFilter?: PokemonSpeciesFilter, filterAllEvolutions?: boolean): PokemonSpecies {
if (fromArenaPool) {
return this.arena.randomSpecies(waveIndex, level, undefined, getPartyLuckValue(this.party));
}
2024-10-04 06:08:31 +01:00
const filteredSpecies = speciesFilter ? [ ...new Set(allSpecies.filter(s => s.isCatchable()).filter(speciesFilter).map(s => {
if (!filterAllEvolutions) {
while (pokemonPrevolutions.hasOwnProperty(s.speciesId)) {
s = getPokemonSpecies(pokemonPrevolutions[s.speciesId]);
}
}
return s;
2024-10-04 06:08:31 +01:00
})) ] : allSpecies.filter(s => s.isCatchable());
return filteredSpecies[Utils.randSeedInt(filteredSpecies.length)];
}
generateRandomBiome(waveIndex: integer): Biome {
const relWave = waveIndex % 250;
const biomes = Utils.getEnumValues(Biome).slice(1, Utils.getEnumValues(Biome).filter(b => b >= 40).length * -1);
const maxDepth = biomeDepths[Biome.END][0] - 2;
const depthWeights = new Array(maxDepth + 1).fill(null)
.map((_, i: integer) => ((1 - Math.min(Math.abs((i / (maxDepth - 1)) - (relWave / 250)) + 0.25, 1)) / 0.75) * 250);
const biomeThresholds: integer[] = [];
let totalWeight = 0;
for (const biome of biomes) {
totalWeight += Math.ceil(depthWeights[biomeDepths[biome][0] - 1] / biomeDepths[biome][1]);
biomeThresholds.push(totalWeight);
}
const randInt = Utils.randSeedInt(totalWeight);
for (const biome of biomes) {
if (randInt < biomeThresholds[biome]) {
return biome;
}
}
return biomes[Utils.randSeedInt(biomes.length)];
}
isBgmPlaying(): boolean {
return this.bgm && this.bgm.isPlaying;
}
playBgm(bgmName?: string, fadeOut?: boolean): void {
if (bgmName === undefined) {
bgmName = this.currentBattle?.getBgmOverride(this) || this.arena?.bgm;
}
if (this.bgm && bgmName === this.bgm.key) {
if (!this.bgm.isPlaying) {
this.bgm.play({
volume: this.masterVolume * this.bgmVolume
});
}
return;
}
if (fadeOut && !this.bgm) {
fadeOut = false;
}
this.bgmCache.add(bgmName);
this.loadBgm(bgmName);
let loopPoint = 0;
loopPoint = bgmName === this.arena.bgm
? this.arena.getBgmLoopPoint()
: this.getBgmLoopPoint(bgmName);
let loaded = false;
const playNewBgm = () => {
[Enhancement] Added a bgmBar to show the name of the track once music is played (#2457) * Added a bgmBar to show the name of the track once music is played * Even more close to ability bar * It now shows. And also shows already for a couple of them a readable name * Now the queue actually works * Create locales for bgmName (bgm-bar ui) + Most of the music has only Japanese and English names But there are a number of tracks with official translations following OST commercialization * Add i18n and use it to retrieve OST names (avoids a giga switch case) + A fallback key is implemented in the case of adding tracks not referenced in the translation files, its value being just the name of the bgm itself * FormatText is now in Utils and not arena-flyout BGM Names for non-localized music will be formatted to have capitalized letters and no _ * It is now a setting. It can be even changed mid fight * Update src/ui/ability-bar.ts * Apply suggestions from code review Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/bgm-name.ts * Apply suggestions from code review Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * Added the rest of the music names * Changed PMD EoS to PMD ETH in german (Pokemon Mystery Dungeon Erkundungsteam Himmel) * Due to feedback it is now "PMD ET-Himmel" * Corrected the encounter theme names (and some missed trainer class names) * Background is now a nicneslice. And it is at the top of the screen and above everything else * The bar now scales with the text. * Revert override * Update src/locales/fr/bgm-name.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * It now only appears when V is pressed (in all but starter select) * Cleared the cod eup * Update src/locales/zh_CN/bgm-name.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/zh_CN/settings.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/locales/ko/bgm-name.ts Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> * The bgmBar now appears in the pause menu instead. * Should react better on settings change * To be safe this required a reload now * Update src/locales/fr/bgm-name.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/fr/bgm-name.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Write out pokemon mystery dungeon names in german * Update src/locales/es/bgm-name.ts Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com> * Update src/locales/zh_CN/bgm-name.ts Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> * Update src/battle-scene.ts --------- Co-authored-by: Dakurei <maxime.palanchini@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com> Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com> Co-authored-by: GoldTra <162721984+GoldTra@users.noreply.github.com>
2024-06-24 16:31:38 +01:00
this.ui.bgmBar.setBgmToBgmBar(bgmName);
if (bgmName === null && this.bgm && !this.bgm.pendingRemove) {
this.bgm.play({
volume: this.masterVolume * this.bgmVolume
});
return;
}
if (this.bgm && !this.bgm.pendingRemove && this.bgm.isPlaying) {
this.bgm.stop();
}
this.bgm = this.sound.add(bgmName, { loop: true });
this.bgm.play({
volume: this.masterVolume * this.bgmVolume
});
if (loopPoint) {
this.bgm.on("looped", () => this.bgm.play({ seek: loopPoint }));
}
};
this.load.once(Phaser.Loader.Events.COMPLETE, () => {
loaded = true;
if (!fadeOut || !this.bgm.isPlaying) {
playNewBgm();
}
});
if (fadeOut) {
const onBgmFaded = () => {
if (loaded && (!this.bgm.isPlaying || this.bgm.pendingRemove)) {
playNewBgm();
}
};
this.time.delayedCall(this.fadeOutBgm(500, true) ? 750 : 250, onBgmFaded);
}
if (!this.load.isLoading()) {
this.load.start();
}
}
pauseBgm(): boolean {
if (this.bgm && !this.bgm.pendingRemove && this.bgm.isPlaying) {
this.bgm.pause();
return true;
}
return false;
}
resumeBgm(): boolean {
if (this.bgm && !this.bgm.pendingRemove && this.bgm.isPaused) {
this.bgm.resume();
return true;
}
return false;
}
updateSoundVolume(): void {
if (this.sound) {
[Refactor][QoL] Game Audio + New Settings (#3527) * Changed how non-BGM are loaded into the game + moved into directories * some leftovers * Apply suggestions from code review Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Added setting for Field Volume + rewrote playSound() and updateSoundVolume() functions to reflect the new settings. * Main -> Beta (#3635) * Fixed issue with falsy issue within condition to get a stat for IV scanner * add fix setting code to prevent form/variant bug when default form/variant setting is wrong. in addition, that fix code include gender fix, so i revert old gender fix. update wrong log message. * [Hotfix] Fix Memory Mushroom not showing relearner moves (#3619) * Fix Memory Mushroom not showing relearner moves * Fix rollout test * Rewrite player faint logic in FaintPhase (#3614) * 867 runerigus sprite (#3629) cropped static frames, fixed cropped sprite set runerigus exp to use the shiny exp's animation verified all hex colors are unchanged - fixed ultra necrozma exp front variant swapped arrays. - xatu female eye color fix * [Bug] Preventing the MBH from being stolen in Endless (#3630) * Endless MBH Fix * add import * Revert "add import" This reverts commit 814a4059c2830e972c348d698259535e117850bf. * Revert "Endless MBH Fix" This reverts commit 8eb448130132ff9eed614a2ec576926814008df0. * removed newline --------- Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> Co-authored-by: frutescens <info@laptop> * [Bug] Fix type-hints for immunity (#3620) * enable mock containers to be found by name * enable mock text to be found by name * add test coverage for type-hints Only for "immunity" and "status moves" * fix wrong message key of curse(ghost type) (#3631) Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> * [Hotfix] Steal-able Mini Black Hole Pt 2 (#3632) * Still have no idea where Eternatus is given the MBH.... * typedocs --------- Co-authored-by: frutescens <info@laptop> * [Hotfix] Abilities that prevent ATK drops no longer stop other stat drops (#3624) * Abilities that prevent ATK drops no longer stop other stat drops * Apply suggestions from code review Co-authored-by: Mumble <kimjoanne@protonmail.com> * Add `isNullOrUndefined()` utility function --------- * Grip Claw now shows the proper pokemon nickname (#3634) Co-authored-by: frutescens <info@laptop> --------- Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: KimJeongSun <leo@atlaslabs.ai> Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com> * [Bug] Preventing the MBH from being stolen in Endless (#3630) * Endless MBH Fix * add import * Revert "add import" This reverts commit 814a4059c2830e972c348d698259535e117850bf. * Revert "Endless MBH Fix" This reverts commit 8eb448130132ff9eed614a2ec576926814008df0. * removed newline --------- Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> Co-authored-by: frutescens <info@laptop> * [Hotfix] Steal-able Mini Black Hole Pt 2 (#3632) * Still have no idea where Eternatus is given the MBH.... * typedocs --------- Co-authored-by: frutescens <info@laptop> * Deleted phases.ts (#3618) * Updated sound terms * Added space for localization * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_TW/settings.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@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/zh_CN/settings.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/de/settings.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/ko/settings.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/it/settings.ts Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Include sound effects that were loaded in as BGM. * Removed stray placeholder localization --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: KimJeongSun <leo@atlaslabs.ai> Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.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: returntoice <dieandbecome@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com>
2024-08-25 17:40:14 +01:00
for (const sound of this.sound.getAllPlaying() as AnySound[]) {
if (this.bgmCache.has(sound.key)) {
sound.setVolume(this.masterVolume * this.bgmVolume);
} else {
const soundDetails = sound.key.split("/");
switch (soundDetails[0]) {
case "battle_anims":
case "cry":
if (soundDetails[1].startsWith("PRSFX- ")) {
sound.setVolume(this.masterVolume * this.fieldVolume * 0.5);
} else {
sound.setVolume(this.masterVolume * this.fieldVolume);
}
break;
case "se":
case "ui":
sound.setVolume(this.masterVolume * this.seVolume);
[Refactor][QoL] Game Audio + New Settings (#3527) * Changed how non-BGM are loaded into the game + moved into directories * some leftovers * Apply suggestions from code review Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Added setting for Field Volume + rewrote playSound() and updateSoundVolume() functions to reflect the new settings. * Main -> Beta (#3635) * Fixed issue with falsy issue within condition to get a stat for IV scanner * add fix setting code to prevent form/variant bug when default form/variant setting is wrong. in addition, that fix code include gender fix, so i revert old gender fix. update wrong log message. * [Hotfix] Fix Memory Mushroom not showing relearner moves (#3619) * Fix Memory Mushroom not showing relearner moves * Fix rollout test * Rewrite player faint logic in FaintPhase (#3614) * 867 runerigus sprite (#3629) cropped static frames, fixed cropped sprite set runerigus exp to use the shiny exp's animation verified all hex colors are unchanged - fixed ultra necrozma exp front variant swapped arrays. - xatu female eye color fix * [Bug] Preventing the MBH from being stolen in Endless (#3630) * Endless MBH Fix * add import * Revert "add import" This reverts commit 814a4059c2830e972c348d698259535e117850bf. * Revert "Endless MBH Fix" This reverts commit 8eb448130132ff9eed614a2ec576926814008df0. * removed newline --------- Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> Co-authored-by: frutescens <info@laptop> * [Bug] Fix type-hints for immunity (#3620) * enable mock containers to be found by name * enable mock text to be found by name * add test coverage for type-hints Only for "immunity" and "status moves" * fix wrong message key of curse(ghost type) (#3631) Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> * [Hotfix] Steal-able Mini Black Hole Pt 2 (#3632) * Still have no idea where Eternatus is given the MBH.... * typedocs --------- Co-authored-by: frutescens <info@laptop> * [Hotfix] Abilities that prevent ATK drops no longer stop other stat drops (#3624) * Abilities that prevent ATK drops no longer stop other stat drops * Apply suggestions from code review Co-authored-by: Mumble <kimjoanne@protonmail.com> * Add `isNullOrUndefined()` utility function --------- * Grip Claw now shows the proper pokemon nickname (#3634) Co-authored-by: frutescens <info@laptop> --------- Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: KimJeongSun <leo@atlaslabs.ai> Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com> * [Bug] Preventing the MBH from being stolen in Endless (#3630) * Endless MBH Fix * add import * Revert "add import" This reverts commit 814a4059c2830e972c348d698259535e117850bf. * Revert "Endless MBH Fix" This reverts commit 8eb448130132ff9eed614a2ec576926814008df0. * removed newline --------- Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> Co-authored-by: frutescens <info@laptop> * [Hotfix] Steal-able Mini Black Hole Pt 2 (#3632) * Still have no idea where Eternatus is given the MBH.... * typedocs --------- Co-authored-by: frutescens <info@laptop> * Deleted phases.ts (#3618) * Updated sound terms * Added space for localization * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_TW/settings.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@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/zh_CN/settings.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/de/settings.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/ko/settings.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/it/settings.ts Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Include sound effects that were loaded in as BGM. * Removed stray placeholder localization --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: KimJeongSun <leo@atlaslabs.ai> Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.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: returntoice <dieandbecome@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com>
2024-08-25 17:40:14 +01:00
}
}
}
}
}
fadeOutBgm(duration: integer = 500, destroy: boolean = true): boolean {
if (!this.bgm) {
return false;
}
const bgm = this.sound.getAllPlaying().find(bgm => bgm.key === this.bgm.key);
if (bgm) {
SoundFade.fadeOut(this, this.bgm, duration, destroy);
return true;
}
return false;
}
/**
* Fades out current track for `delay` ms, then fades in new track.
* @param newBgmKey
* @param destroy
* @param delay
*/
fadeAndSwitchBgm(newBgmKey: string, destroy: boolean = false, delay: number = 2000) {
this.fadeOutBgm(delay, destroy);
this.time.delayedCall(delay, () => {
this.playBgm(newBgmKey);
});
}
playSound(sound: string | AnySound, config?: object): AnySound {
[Refactor][QoL] Game Audio + New Settings (#3527) * Changed how non-BGM are loaded into the game + moved into directories * some leftovers * Apply suggestions from code review Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Added setting for Field Volume + rewrote playSound() and updateSoundVolume() functions to reflect the new settings. * Main -> Beta (#3635) * Fixed issue with falsy issue within condition to get a stat for IV scanner * add fix setting code to prevent form/variant bug when default form/variant setting is wrong. in addition, that fix code include gender fix, so i revert old gender fix. update wrong log message. * [Hotfix] Fix Memory Mushroom not showing relearner moves (#3619) * Fix Memory Mushroom not showing relearner moves * Fix rollout test * Rewrite player faint logic in FaintPhase (#3614) * 867 runerigus sprite (#3629) cropped static frames, fixed cropped sprite set runerigus exp to use the shiny exp's animation verified all hex colors are unchanged - fixed ultra necrozma exp front variant swapped arrays. - xatu female eye color fix * [Bug] Preventing the MBH from being stolen in Endless (#3630) * Endless MBH Fix * add import * Revert "add import" This reverts commit 814a4059c2830e972c348d698259535e117850bf. * Revert "Endless MBH Fix" This reverts commit 8eb448130132ff9eed614a2ec576926814008df0. * removed newline --------- Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> Co-authored-by: frutescens <info@laptop> * [Bug] Fix type-hints for immunity (#3620) * enable mock containers to be found by name * enable mock text to be found by name * add test coverage for type-hints Only for "immunity" and "status moves" * fix wrong message key of curse(ghost type) (#3631) Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> * [Hotfix] Steal-able Mini Black Hole Pt 2 (#3632) * Still have no idea where Eternatus is given the MBH.... * typedocs --------- Co-authored-by: frutescens <info@laptop> * [Hotfix] Abilities that prevent ATK drops no longer stop other stat drops (#3624) * Abilities that prevent ATK drops no longer stop other stat drops * Apply suggestions from code review Co-authored-by: Mumble <kimjoanne@protonmail.com> * Add `isNullOrUndefined()` utility function --------- * Grip Claw now shows the proper pokemon nickname (#3634) Co-authored-by: frutescens <info@laptop> --------- Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: KimJeongSun <leo@atlaslabs.ai> Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com> * [Bug] Preventing the MBH from being stolen in Endless (#3630) * Endless MBH Fix * add import * Revert "add import" This reverts commit 814a4059c2830e972c348d698259535e117850bf. * Revert "Endless MBH Fix" This reverts commit 8eb448130132ff9eed614a2ec576926814008df0. * removed newline --------- Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> Co-authored-by: frutescens <info@laptop> * [Hotfix] Steal-able Mini Black Hole Pt 2 (#3632) * Still have no idea where Eternatus is given the MBH.... * typedocs --------- Co-authored-by: frutescens <info@laptop> * Deleted phases.ts (#3618) * Updated sound terms * Added space for localization * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_TW/settings.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@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/zh_CN/settings.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/de/settings.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/ko/settings.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/it/settings.ts Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Include sound effects that were loaded in as BGM. * Removed stray placeholder localization --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: KimJeongSun <leo@atlaslabs.ai> Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.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: returntoice <dieandbecome@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com>
2024-08-25 17:40:14 +01:00
const key = typeof sound === "string" ? sound : sound.key;
config = config ?? {};
try {
const keyDetails = key.split("/");
config["volume"] = config["volume"] ?? 1;
[Refactor][QoL] Game Audio + New Settings (#3527) * Changed how non-BGM are loaded into the game + moved into directories * some leftovers * Apply suggestions from code review Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Added setting for Field Volume + rewrote playSound() and updateSoundVolume() functions to reflect the new settings. * Main -> Beta (#3635) * Fixed issue with falsy issue within condition to get a stat for IV scanner * add fix setting code to prevent form/variant bug when default form/variant setting is wrong. in addition, that fix code include gender fix, so i revert old gender fix. update wrong log message. * [Hotfix] Fix Memory Mushroom not showing relearner moves (#3619) * Fix Memory Mushroom not showing relearner moves * Fix rollout test * Rewrite player faint logic in FaintPhase (#3614) * 867 runerigus sprite (#3629) cropped static frames, fixed cropped sprite set runerigus exp to use the shiny exp's animation verified all hex colors are unchanged - fixed ultra necrozma exp front variant swapped arrays. - xatu female eye color fix * [Bug] Preventing the MBH from being stolen in Endless (#3630) * Endless MBH Fix * add import * Revert "add import" This reverts commit 814a4059c2830e972c348d698259535e117850bf. * Revert "Endless MBH Fix" This reverts commit 8eb448130132ff9eed614a2ec576926814008df0. * removed newline --------- Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> Co-authored-by: frutescens <info@laptop> * [Bug] Fix type-hints for immunity (#3620) * enable mock containers to be found by name * enable mock text to be found by name * add test coverage for type-hints Only for "immunity" and "status moves" * fix wrong message key of curse(ghost type) (#3631) Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> * [Hotfix] Steal-able Mini Black Hole Pt 2 (#3632) * Still have no idea where Eternatus is given the MBH.... * typedocs --------- Co-authored-by: frutescens <info@laptop> * [Hotfix] Abilities that prevent ATK drops no longer stop other stat drops (#3624) * Abilities that prevent ATK drops no longer stop other stat drops * Apply suggestions from code review Co-authored-by: Mumble <kimjoanne@protonmail.com> * Add `isNullOrUndefined()` utility function --------- * Grip Claw now shows the proper pokemon nickname (#3634) Co-authored-by: frutescens <info@laptop> --------- Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: KimJeongSun <leo@atlaslabs.ai> Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com> * [Bug] Preventing the MBH from being stolen in Endless (#3630) * Endless MBH Fix * add import * Revert "add import" This reverts commit 814a4059c2830e972c348d698259535e117850bf. * Revert "Endless MBH Fix" This reverts commit 8eb448130132ff9eed614a2ec576926814008df0. * removed newline --------- Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> Co-authored-by: frutescens <info@laptop> * [Hotfix] Steal-able Mini Black Hole Pt 2 (#3632) * Still have no idea where Eternatus is given the MBH.... * typedocs --------- Co-authored-by: frutescens <info@laptop> * Deleted phases.ts (#3618) * Updated sound terms * Added space for localization * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_TW/settings.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@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/zh_CN/settings.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/de/settings.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/ko/settings.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/it/settings.ts Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Include sound effects that were loaded in as BGM. * Removed stray placeholder localization --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: KimJeongSun <leo@atlaslabs.ai> Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.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: returntoice <dieandbecome@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com>
2024-08-25 17:40:14 +01:00
switch (keyDetails[0]) {
case "level_up_fanfare":
case "item_fanfare":
case "minor_fanfare":
case "heal":
case "evolution":
case "evolution_fanfare":
// These sounds are loaded in as BGM, but played as sound effects
// When these sounds are updated in updateVolume(), they are treated as BGM however because they are placed in the BGM Cache through being called by playSoundWithoutBGM()
config["volume"] *= (this.masterVolume * this.bgmVolume);
break;
case "battle_anims":
case "cry":
config["volume"] *= (this.masterVolume * this.fieldVolume);
//PRSFX sound files are unusually loud
if (keyDetails[1].startsWith("PRSFX- ")) {
config["volume"] *= 0.5;
}
break;
case "ui":
//As of, right now this applies to the "select", "menu_open", "error" sound effects
config["volume"] *= (this.masterVolume * this.uiVolume);
break;
case "se":
config["volume"] *= (this.masterVolume * this.seVolume);
break;
}
[Refactor][QoL] Game Audio + New Settings (#3527) * Changed how non-BGM are loaded into the game + moved into directories * some leftovers * Apply suggestions from code review Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Added setting for Field Volume + rewrote playSound() and updateSoundVolume() functions to reflect the new settings. * Main -> Beta (#3635) * Fixed issue with falsy issue within condition to get a stat for IV scanner * add fix setting code to prevent form/variant bug when default form/variant setting is wrong. in addition, that fix code include gender fix, so i revert old gender fix. update wrong log message. * [Hotfix] Fix Memory Mushroom not showing relearner moves (#3619) * Fix Memory Mushroom not showing relearner moves * Fix rollout test * Rewrite player faint logic in FaintPhase (#3614) * 867 runerigus sprite (#3629) cropped static frames, fixed cropped sprite set runerigus exp to use the shiny exp's animation verified all hex colors are unchanged - fixed ultra necrozma exp front variant swapped arrays. - xatu female eye color fix * [Bug] Preventing the MBH from being stolen in Endless (#3630) * Endless MBH Fix * add import * Revert "add import" This reverts commit 814a4059c2830e972c348d698259535e117850bf. * Revert "Endless MBH Fix" This reverts commit 8eb448130132ff9eed614a2ec576926814008df0. * removed newline --------- Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> Co-authored-by: frutescens <info@laptop> * [Bug] Fix type-hints for immunity (#3620) * enable mock containers to be found by name * enable mock text to be found by name * add test coverage for type-hints Only for "immunity" and "status moves" * fix wrong message key of curse(ghost type) (#3631) Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> * [Hotfix] Steal-able Mini Black Hole Pt 2 (#3632) * Still have no idea where Eternatus is given the MBH.... * typedocs --------- Co-authored-by: frutescens <info@laptop> * [Hotfix] Abilities that prevent ATK drops no longer stop other stat drops (#3624) * Abilities that prevent ATK drops no longer stop other stat drops * Apply suggestions from code review Co-authored-by: Mumble <kimjoanne@protonmail.com> * Add `isNullOrUndefined()` utility function --------- * Grip Claw now shows the proper pokemon nickname (#3634) Co-authored-by: frutescens <info@laptop> --------- Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: KimJeongSun <leo@atlaslabs.ai> Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: Mumble <kimjoanne@protonmail.com> Co-authored-by: frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com> * [Bug] Preventing the MBH from being stolen in Endless (#3630) * Endless MBH Fix * add import * Revert "add import" This reverts commit 814a4059c2830e972c348d698259535e117850bf. * Revert "Endless MBH Fix" This reverts commit 8eb448130132ff9eed614a2ec576926814008df0. * removed newline --------- Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> Co-authored-by: frutescens <info@laptop> * [Hotfix] Steal-able Mini Black Hole Pt 2 (#3632) * Still have no idea where Eternatus is given the MBH.... * typedocs --------- Co-authored-by: frutescens <info@laptop> * Deleted phases.ts (#3618) * Updated sound terms * Added space for localization * Update src/locales/ko/settings.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_TW/settings.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@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/zh_CN/settings.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/de/settings.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/ko/settings.ts Co-authored-by: returntoice <dieandbecome@gmail.com> * Update src/locales/fr/settings.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/it/settings.ts Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com> * Include sound effects that were loaded in as BGM. * Removed stray placeholder localization --------- Co-authored-by: Frutescens <info@laptop> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com> Co-authored-by: KimJeongSun <leo@atlaslabs.ai> Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt> Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com> Co-authored-by: cam <lrlrliwoo@gmail.com> Co-authored-by: Enoch <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.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: returntoice <dieandbecome@gmail.com> Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com>
2024-08-25 17:40:14 +01:00
this.sound.play(key, config);
return this.sound.get(key) as AnySound;
} catch {
console.log(`${key} not found`);
return sound as AnySound;
}
}
playSoundWithoutBgm(soundName: string, pauseDuration?: integer): AnySound {
this.bgmCache.add(soundName);
const resumeBgm = this.pauseBgm();
this.playSound(soundName);
const sound = this.sound.get(soundName) as AnySound;
if (this.bgmResumeTimer) {
this.bgmResumeTimer.destroy();
}
if (resumeBgm) {
this.bgmResumeTimer = this.time.delayedCall((pauseDuration || Utils.fixedInt(sound.totalDuration * 1000)), () => {
this.resumeBgm();
this.bgmResumeTimer = null;
});
}
return sound;
}
getBgmLoopPoint(bgmName: string): number {
switch (bgmName) {
case "battle_kanto_champion": //B2W2 Kanto Champion Battle
return 13.950;
case "battle_johto_champion": //B2W2 Johto Champion Battle
return 23.498;
case "battle_hoenn_champion_g5": //B2W2 Hoenn Champion Battle
return 11.328;
case "battle_hoenn_champion_g6": //ORAS Hoenn Champion Battle
return 11.762;
case "battle_sinnoh_champion": //B2W2 Sinnoh Champion Battle
return 12.235;
case "battle_champion_alder": //BW Unova Champion Battle
return 27.653;
case "battle_champion_iris": //B2W2 Unova Champion Battle
return 10.145;
case "battle_kalos_champion": //XY Kalos Champion Battle
return 10.380;
case "battle_alola_champion": //USUM Alola Champion Battle
return 13.025;
case "battle_galar_champion": //SWSH Galar Champion Battle
return 61.635;
case "battle_champion_geeta": //SV Champion Geeta Battle
return 37.447;
case "battle_champion_nemona": //SV Champion Nemona Battle
return 14.914;
case "battle_champion_kieran": //SV Champion Kieran Battle
return 7.206;
case "battle_hoenn_elite": //ORAS Elite Four Battle
return 11.350;
case "battle_unova_elite": //BW Elite Four Battle
return 17.730;
case "battle_kalos_elite": //XY Elite Four Battle
return 12.340;
case "battle_alola_elite": //SM Elite Four Battle
return 19.212;
case "battle_galar_elite": //SWSH League Tournament Battle
return 164.069;
case "battle_paldea_elite": //SV Elite Four Battle
return 12.770;
case "battle_bb_elite": //SV BB League Elite Four Battle
return 19.434;
case "battle_final_encounter": //PMD RTDX Rayquaza's Domain
return 19.159;
case "battle_final": //BW Ghetsis Battle
return 16.453;
case "battle_kanto_gym": //B2W2 Kanto Gym Battle
return 13.857;
case "battle_johto_gym": //B2W2 Johto Gym Battle
return 12.911;
case "battle_hoenn_gym": //B2W2 Hoenn Gym Battle
return 12.379;
case "battle_sinnoh_gym": //B2W2 Sinnoh Gym Battle
return 13.122;
case "battle_unova_gym": //BW Unova Gym Battle
return 19.145;
case "battle_kalos_gym": //XY Kalos Gym Battle
return 44.810;
case "battle_galar_gym": //SWSH Galar Gym Battle
return 171.262;
case "battle_paldea_gym": //SV Paldea Gym Battle
return 127.489;
case "battle_legendary_kanto": //XY Kanto Legendary Battle
return 32.966;
case "battle_legendary_raikou": //HGSS Raikou Battle
return 12.632;
case "battle_legendary_entei": //HGSS Entei Battle
return 2.905;
case "battle_legendary_suicune": //HGSS Suicune Battle
return 12.636;
case "battle_legendary_lugia": //HGSS Lugia Battle
return 19.770;
case "battle_legendary_ho_oh": //HGSS Ho-oh Battle
return 17.668;
case "battle_legendary_regis_g5": //B2W2 Legendary Titan Battle
return 49.500;
case "battle_legendary_regis_g6": //ORAS Legendary Titan Battle
return 21.130;
case "battle_legendary_gro_kyo": //ORAS Groudon & Kyogre Battle
return 10.547;
case "battle_legendary_rayquaza": //ORAS Rayquaza Battle
return 10.495;
case "battle_legendary_deoxys": //ORAS Deoxys Battle
return 13.333;
case "battle_legendary_lake_trio": //ORAS Lake Guardians Battle
return 16.887;
case "battle_legendary_sinnoh": //ORAS Sinnoh Legendary Battle
return 22.770;
case "battle_legendary_dia_pal": //ORAS Dialga & Palkia Battle
return 16.009;
case "battle_legendary_origin_forme": //LA Origin Dialga & Palkia Battle
return 18.961;
case "battle_legendary_giratina": //ORAS Giratina Battle
return 10.451;
case "battle_legendary_arceus": //HGSS Arceus Battle
return 9.595;
case "battle_legendary_unova": //BW Unova Legendary Battle
return 13.855;
case "battle_legendary_kyurem": //BW Kyurem Battle
return 18.314;
case "battle_legendary_res_zek": //BW Reshiram & Zekrom Battle
return 18.329;
case "battle_legendary_xern_yvel": //XY Xerneas & Yveltal Battle
return 26.468;
case "battle_legendary_tapu": //SM Tapu Battle
return 0.000;
case "battle_legendary_sol_lun": //SM Solgaleo & Lunala Battle
return 6.525;
case "battle_legendary_ub": //SM Ultra Beast Battle
return 9.818;
case "battle_legendary_dusk_dawn": //USUM Dusk Mane & Dawn Wings Necrozma Battle
return 5.211;
case "battle_legendary_ultra_nec": //USUM Ultra Necrozma Battle
return 10.344;
case "battle_legendary_zac_zam": //SWSH Zacian & Zamazenta Battle
return 11.424;
case "battle_legendary_glas_spec": //SWSH Glastrier & Spectrier Battle
return 12.503;
case "battle_legendary_calyrex": //SWSH Calyrex Battle
return 50.641;
case "battle_legendary_riders": //SWSH Ice & Shadow Rider Calyrex Battle
return 18.155;
case "battle_legendary_birds_galar": //SWSH Galarian Legendary Birds Battle
return 0.175;
case "battle_legendary_ruinous": //SV Treasures of Ruin Battle
return 6.333;
case "battle_legendary_kor_mir": //SV Depths of Area Zero Battle
return 6.442;
case "battle_legendary_loyal_three": //SV Loyal Three Battle
return 6.500;
case "battle_legendary_ogerpon": //SV Ogerpon Battle
return 14.335;
case "battle_legendary_terapagos": //SV Terapagos Battle
return 24.377;
case "battle_legendary_pecharunt": //SV Pecharunt Battle
return 6.508;
case "battle_rival": //BW Rival Battle
return 14.110;
case "battle_rival_2": //BW N Battle
return 17.714;
case "battle_rival_3": //BW Final N Battle
return 17.586;
case "battle_trainer": //BW Trainer Battle
return 13.686;
case "battle_wild": //BW Wild Battle
return 12.703;
case "battle_wild_strong": //BW Strong Wild Battle
return 13.940;
case "end_summit": //PMD RTDX Sky Tower Summit
return 30.025;
case "battle_rocket_grunt": //HGSS Team Rocket Battle
return 12.707;
case "battle_aqua_magma_grunt": //ORAS Team Aqua & Magma Battle
return 12.062;
case "battle_galactic_grunt": //BDSP Team Galactic Battle
return 13.043;
case "battle_plasma_grunt": //BW Team Plasma Battle
return 12.974;
case "battle_flare_grunt": //XY Team Flare Battle
return 4.228;
case "battle_aether_grunt": // SM Aether Foundation Battle
return 16.00;
case "battle_skull_grunt": // SM Team Skull Battle
return 20.87;
case "battle_macro_grunt": // SWSH Trainer Battle
return 11.56;
case "battle_star_grunt": //SV Team Star Battle
return 133.362;
case "battle_galactic_admin": //BDSP Team Galactic Admin Battle
return 11.997;
case "battle_skull_admin": //SM Team Skull Admin Battle
return 15.463;
case "battle_oleana": //SWSH Oleana Battle
return 14.110;
case "battle_star_admin": //SV Team Star Boss Battle
return 9.493;
case "battle_rocket_boss": //USUM Giovanni Battle
return 9.115;
case "battle_aqua_magma_boss": //ORAS Archie & Maxie Battle
return 14.847;
case "battle_galactic_boss": //BDSP Cyrus Battle
return 106.962;
case "battle_plasma_boss": //B2W2 Ghetsis Battle
return 25.624;
case "battle_flare_boss": //XY Lysandre Battle
return 8.085;
case "battle_aether_boss": //SM Lusamine Battle
return 11.33;
case "battle_skull_boss": //SM Guzma Battle
return 13.13;
case "battle_macro_boss": //SWSH Rose Battle
return 11.42;
case "battle_star_boss": //SV Cassiopeia Battle
return 25.764;
case "mystery_encounter_gen_5_gts": // BW GTS
return 8.52;
case "mystery_encounter_gen_6_gts": // XY GTS
return 9.24;
case "mystery_encounter_fun_and_games": // EoS Guildmaster Wigglytuff
return 4.78;
case "mystery_encounter_weird_dream": // EoS Temporal Spire
return 41.42;
case "mystery_encounter_delibirdy": // Firel Delibirdy
return 82.28;
}
return 0;
}
toggleInvert(invert: boolean): void {
if (invert) {
this.cameras.main.setPostPipeline(InvertPostFX);
} else {
this.cameras.main.removePostPipeline("InvertPostFX");
}
}
/* Phase Functions */
[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 17:23:12 +01:00
getCurrentPhase(): Phase | null {
return this.currentPhase;
}
[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 17:23:12 +01:00
getStandbyPhase(): Phase | null {
return this.standbyPhase;
}
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-28 00:47:00 +01:00
/**
* Adds a phase to the conditional queue and ensures it is executed only when the specified condition is met.
*
* This method allows deferring the execution of a phase until certain conditions are met, which is useful for handling
* situations like abilities and entry hazards that depend on specific game states.
*
* @param {Phase} phase - The phase to be added to the conditional queue.
* @param {() => boolean} condition - A function that returns a boolean indicating whether the phase should be executed.
*
*/
pushConditionalPhase(phase: Phase, condition: () => boolean): void {
2024-10-04 06:08:31 +01:00
this.conditionalQueue.push([ condition, phase ]);
}
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-28 00:47:00 +01:00
/**
* Adds a phase to nextCommandPhaseQueue, as long as boolean passed in is false
* @param phase {@linkcode Phase} the phase to add
* @param defer boolean on which queue to add to, defaults to false, and adds to phaseQueue
*/
pushPhase(phase: Phase, defer: boolean = false): void {
(!defer ? this.phaseQueue : this.nextCommandPhaseQueue).push(phase);
}
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-28 00:47:00 +01:00
/**
* Adds Phase to the end of phaseQueuePrepend, or at phaseQueuePrependSpliceIndex
* @param phase {@linkcode Phase} the phase to add
*/
unshiftPhase(phase: Phase): void {
if (this.phaseQueuePrependSpliceIndex === -1) {
this.phaseQueuePrepend.push(phase);
} else {
this.phaseQueuePrepend.splice(this.phaseQueuePrependSpliceIndex, 0, phase);
}
}
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-28 00:47:00 +01:00
/**
* Clears the phaseQueue
*/
clearPhaseQueue(): void {
this.phaseQueue.splice(0, this.phaseQueue.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-28 00:47:00 +01:00
/**
* Used by function unshiftPhase(), sets index to start inserting at current length instead of the end of the array, useful if phaseQueuePrepend gets longer with Phases
*/
setPhaseQueueSplice(): void {
this.phaseQueuePrependSpliceIndex = this.phaseQueuePrepend.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-28 00:47:00 +01:00
/**
* Resets phaseQueuePrependSpliceIndex to -1, implies that calls to unshiftPhase will insert at end of phaseQueuePrepend
*/
clearPhaseQueueSplice(): void {
this.phaseQueuePrependSpliceIndex = -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-28 00:47:00 +01:00
/**
* Is called by each Phase implementations "end()" by default
* We dump everything from phaseQueuePrepend to the start of of phaseQueue
* then removes first Phase and starts it
*/
shiftPhase(): void {
if (this.standbyPhase) {
this.currentPhase = this.standbyPhase;
this.standbyPhase = null;
return;
}
if (this.phaseQueuePrependSpliceIndex > -1) {
this.clearPhaseQueueSplice();
}
if (this.phaseQueuePrepend.length) {
while (this.phaseQueuePrepend.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 17:23:12 +01:00
const poppedPhase = this.phaseQueuePrepend.pop();
if (poppedPhase) {
this.phaseQueue.unshift(poppedPhase);
}
}
}
if (!this.phaseQueue.length) {
this.populatePhaseQueue();
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-28 00:47:00 +01:00
// Clear the conditionalQueue if there are no phases left in the phaseQueue
this.conditionalQueue = [];
}
[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 17:23:12 +01:00
this.currentPhase = this.phaseQueue.shift() ?? null;
// Check if there are any conditional phases queued
if (this.conditionalQueue?.length) {
// Retrieve the first conditional phase from the queue
const conditionalPhase = this.conditionalQueue.shift();
// Evaluate the condition associated with the 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 17:23:12 +01:00
if (conditionalPhase?.[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-28 00:47:00 +01:00
// If the condition is met, add the phase to the phase queue
this.pushPhase(conditionalPhase[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 17:23:12 +01:00
} else if (conditionalPhase) {
// If the condition is not met, re-add the phase back to the front of the conditional queue
this.conditionalQueue.unshift(conditionalPhase);
[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 17:23:12 +01:00
} else {
console.warn("condition phase is undefined/null!", conditionalPhase);
}
}
if (this.currentPhase) {
console.log(`%cStart Phase ${this.currentPhase.constructor.name}`, "color:green;");
this.currentPhase.start();
}
}
2024-05-24 00:45:04 +01:00
overridePhase(phase: Phase): boolean {
if (this.standbyPhase) {
return false;
}
this.standbyPhase = this.currentPhase;
this.currentPhase = phase;
console.log(`%cStart Phase ${phase.constructor.name}`, "color:green;");
phase.start();
return true;
}
/**
* Find a specific {@linkcode Phase} in the phase queue.
*
* @param phaseFilter filter function to use to find the wanted phase
* @returns the found phase or undefined if none found
*/
findPhase<P extends Phase = Phase>(phaseFilter: (phase: P) => boolean): P | undefined {
return this.phaseQueue.find(phaseFilter) as P;
}
tryReplacePhase(phaseFilter: (phase: Phase) => boolean, phase: Phase): boolean {
const phaseIndex = this.phaseQueue.findIndex(phaseFilter);
if (phaseIndex > -1) {
this.phaseQueue[phaseIndex] = phase;
return true;
}
return false;
}
tryRemovePhase(phaseFilter: (phase: Phase) => boolean): boolean {
const phaseIndex = this.phaseQueue.findIndex(phaseFilter);
if (phaseIndex > -1) {
this.phaseQueue.splice(phaseIndex, 1);
return true;
}
return false;
}
/**
* Will search for a specific phase in {@linkcode phaseQueuePrepend} via filter, and remove the first result if a match is found.
* @param phaseFilter filter function
*/
tryRemoveUnshiftedPhase(phaseFilter: (phase: Phase) => boolean): boolean {
const phaseIndex = this.phaseQueuePrepend.findIndex(phaseFilter);
if (phaseIndex > -1) {
this.phaseQueuePrepend.splice(phaseIndex, 1);
return true;
}
return 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-28 00:47:00 +01:00
/**
* Tries to add the input phase to index before target phase in the phaseQueue, else simply calls unshiftPhase()
* @param phase {@linkcode Phase} the phase to be added
* @param targetPhase {@linkcode Phase} the type of phase to search for in phaseQueue
* @returns boolean if a targetPhase was found and added
*/
prependToPhase(phase: Phase, targetPhase: Constructor<Phase>): boolean {
const targetIndex = this.phaseQueue.findIndex(ph => ph instanceof targetPhase);
if (targetIndex !== -1) {
this.phaseQueue.splice(targetIndex, 0, phase);
return true;
} else {
this.unshiftPhase(phase);
return false;
}
}
/**
* Adds a MessagePhase, either to PhaseQueuePrepend or nextCommandPhaseQueue
* @param message string for MessagePhase
* @param callbackDelay optional param for MessagePhase constructor
* @param prompt optional param for MessagePhase constructor
* @param promptDelay optional param for MessagePhase constructor
* @param defer boolean for which queue to add it to, false -> add to PhaseQueuePrepend, true -> nextCommandPhaseQueue
*/
[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 17:23:12 +01:00
queueMessage(message: string, callbackDelay?: integer | null, prompt?: boolean | null, promptDelay?: integer | null, defer?: boolean | null) {
const phase = new MessagePhase(this, message, callbackDelay, prompt, promptDelay);
if (!defer) {
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-28 00:47:00 +01:00
// adds to the end of PhaseQueuePrepend
this.unshiftPhase(phase);
} 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-28 00:47:00 +01:00
//remember that pushPhase adds it to nextCommandPhaseQueue
this.pushPhase(phase);
}
}
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-28 00:47:00 +01:00
/**
* Moves everything from nextCommandPhaseQueue to phaseQueue (keeping order)
*/
populatePhaseQueue(): void {
if (this.nextCommandPhaseQueue.length) {
this.phaseQueue.push(...this.nextCommandPhaseQueue);
this.nextCommandPhaseQueue.splice(0, this.nextCommandPhaseQueue.length);
}
this.phaseQueue.push(new TurnInitPhase(this));
}
addMoney(amount: integer): void {
this.money = Math.min(this.money + amount, Number.MAX_SAFE_INTEGER);
this.updateMoneyText();
this.animateMoneyChanged(true);
this.validateAchvs(MoneyAchv);
}
getWaveMoneyAmount(moneyMultiplier: number): integer {
const waveIndex = this.currentBattle.waveIndex;
const waveSetIndex = Math.ceil(waveIndex / 10) - 1;
const moneyValue = Math.pow((waveSetIndex + 1 + (0.75 + (((waveIndex - 1) % 10) + 1) / 10)) * 100, 1 + 0.005 * waveSetIndex) * moneyMultiplier;
return Math.floor(moneyValue / 10) * 10;
}
addModifier(modifier: Modifier | null, ignoreUpdate?: boolean, playSound?: boolean, virtual?: boolean, instant?: boolean, cost?: number): Promise<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 17:23:12 +01:00
if (!modifier) {
return Promise.resolve(false);
}
return new Promise(resolve => {
let success = false;
const soundName = modifier.type.soundName;
this.validateAchvs(ModifierAchv, modifier);
const modifiersToRemove: PersistentModifier[] = [];
const modifierPromises: Promise<boolean>[] = [];
if (modifier instanceof PersistentModifier) {
if (modifier instanceof TerastallizeModifier) {
modifiersToRemove.push(...(this.findModifiers(m => m instanceof TerastallizeModifier && m.pokemonId === modifier.pokemonId)));
}
if ((modifier as PersistentModifier).add(this.modifiers, !!virtual, this)) {
if (modifier instanceof PokemonFormChangeItemModifier || modifier instanceof TerastallizeModifier) {
const pokemon = this.getPokemonById(modifier.pokemonId);
if (pokemon) {
success = modifier.apply(pokemon, true);
}
}
if (playSound && !this.sound.get(soundName)) {
this.playSound(soundName);
}
} else if (!virtual) {
const defaultModifierType = getDefaultModifierTypeForTier(modifier.type.tier);
[Localization] Updated and localized "The stack for this item is full." message (#3491) * [Localization] Localized "The stack for this item is full." message * Update src/locales/es/battle.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.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/battle-scene.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * Update src/locales/zh_TW/battle.ts Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> * Update src/locales/ko/battle.ts Co-authored-by: Enoch <enoch.jwsong@gmail.com> * remake * Update src/locales/fr/battle.ts Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr> * Update src/locales/de/battle.ts Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com> * Update src/locales/es/battle.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update src/locales/es/battle.ts Co-authored-by: Asdar <asdargmng@gmail.com> * Update src/locales/ja/battle.ts Co-authored-by: protimita <protimitajp@gmail.com> * Update Korean translation for battle.ts * 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/zh_CN/battle.ts * trailing space --------- Co-authored-by: Asdar <asdargmng@gmail.com> Co-authored-by: Jannik Tappert <38758606+CodeTappert@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: Enoch <enoch.jwsong@gmail.com> Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com> Co-authored-by: protimita <protimitajp@gmail.com>
2024-08-12 15:07:41 +01:00
this.queueMessage(i18next.t("battle:itemStackFull", { fullItemName: modifier.type.name, itemName: defaultModifierType.name }), undefined, true);
return this.addModifier(defaultModifierType.newModifier(), ignoreUpdate, playSound, false, instant).then(success => resolve(success));
}
2024-05-24 00:45:04 +01:00
for (const rm of modifiersToRemove) {
this.removeModifier(rm);
}
if (!ignoreUpdate && !virtual) {
return this.updateModifiers(true, instant).then(() => resolve(success));
}
} else if (modifier instanceof ConsumableModifier) {
if (playSound && !this.sound.get(soundName)) {
this.playSound(soundName);
}
if (modifier instanceof ConsumablePokemonModifier) {
for (const p in this.party) {
const pokemon = this.party[p];
const args: unknown[] = [];
if (modifier instanceof PokemonHpRestoreModifier) {
if (!(modifier as PokemonHpRestoreModifier).fainted) {
const hpRestoreMultiplier = new Utils.IntegerHolder(1);
this.applyModifiers(HealingBoosterModifier, true, hpRestoreMultiplier);
args.push(hpRestoreMultiplier.value);
} else {
args.push(1);
}
} else if (modifier instanceof FusePokemonModifier) {
args.push(this.getPokemonById(modifier.fusePokemonId) as PlayerPokemon);
} else if (modifier instanceof RememberMoveModifier && !Utils.isNullOrUndefined(cost)) {
args.push(cost);
}
2024-05-24 00:45:04 +01:00
if (modifier.shouldApply(pokemon, ...args)) {
const result = modifier.apply(pokemon, ...args);
if (result instanceof Promise) {
modifierPromises.push(result.then(s => success ||= s));
} else {
success ||= result;
}
}
}
2024-05-24 00:45:04 +01:00
2024-10-04 06:08:31 +01:00
return Promise.allSettled([ this.party.map(p => p.updateInfo(instant)), ...modifierPromises ]).then(() => resolve(success));
} else {
const args = [ this ];
if (modifier.shouldApply(...args)) {
const result = modifier.apply(...args);
if (result instanceof Promise) {
return result.then(success => resolve(success));
} else {
success ||= result;
}
}
}
}
resolve(success);
});
}
addEnemyModifier(modifier: PersistentModifier, ignoreUpdate?: boolean, instant?: boolean): Promise<void> {
return new Promise(resolve => {
const modifiersToRemove: PersistentModifier[] = [];
if (modifier instanceof TerastallizeModifier) {
modifiersToRemove.push(...(this.findModifiers(m => m instanceof TerastallizeModifier && m.pokemonId === modifier.pokemonId, false)));
}
if ((modifier as PersistentModifier).add(this.enemyModifiers, false, this)) {
if (modifier instanceof PokemonFormChangeItemModifier || modifier instanceof TerastallizeModifier) {
const pokemon = this.getPokemonById(modifier.pokemonId);
if (pokemon) {
modifier.apply(pokemon, true);
}
}
for (const rm of modifiersToRemove) {
this.removeModifier(rm, true);
}
}
if (!ignoreUpdate) {
this.updateModifiers(false, instant).then(() => resolve());
} else {
resolve();
}
});
}
/**
* Try to transfer a held item to another pokemon.
* If the recepient already has the maximum amount allowed for this item, the transfer is cancelled.
* The quantity to transfer is automatically capped at how much the recepient can take before reaching the maximum stack size for the item.
* A transfer that moves a quantity smaller than what is specified in the transferQuantity parameter is still considered successful.
* @param itemModifier {@linkcode PokemonHeldItemModifier} item to transfer (represents the whole stack)
* @param target {@linkcode Pokemon} pokemon recepient in this transfer
* @param playSound {boolean}
* @param transferQuantity {@linkcode integer} how many items of the stack to transfer. Optional, defaults to 1
* @param instant {boolean}
* @param ignoreUpdate {boolean}
* @returns true if the transfer was successful
*/
tryTransferHeldItemModifier(itemModifier: PokemonHeldItemModifier, target: Pokemon, playSound: boolean, transferQuantity: integer = 1, instant?: boolean, ignoreUpdate?: boolean): Promise<boolean> {
return new Promise(resolve => {
const source = itemModifier.pokemonId ? itemModifier.getPokemon(target.scene) : null;
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 17:23:12 +01:00
Utils.executeIf(!!source && source.isPlayer() !== target.isPlayer(), () => applyAbAttrs(BlockItemTheftAbAttr, source! /* checked in condition*/, cancelled)).then(() => {
if (cancelled.value) {
return resolve(false);
}
const newItemModifier = itemModifier.clone() as PokemonHeldItemModifier;
newItemModifier.pokemonId = target.id;
const matchingModifier = target.scene.findModifier(m => m instanceof PokemonHeldItemModifier
&& (m as PokemonHeldItemModifier).matchType(itemModifier) && m.pokemonId === target.id, target.isPlayer()) as PokemonHeldItemModifier;
let removeOld = true;
if (matchingModifier) {
const maxStackCount = matchingModifier.getMaxStackCount(target.scene);
if (matchingModifier.stackCount >= maxStackCount) {
return resolve(false);
}
const countTaken = Math.min(transferQuantity, itemModifier.stackCount, maxStackCount - matchingModifier.stackCount);
itemModifier.stackCount -= countTaken;
newItemModifier.stackCount = matchingModifier.stackCount + countTaken;
removeOld = !itemModifier.stackCount;
} else {
const countTaken = Math.min(transferQuantity, itemModifier.stackCount);
itemModifier.stackCount -= countTaken;
newItemModifier.stackCount = countTaken;
}
removeOld = !itemModifier.stackCount;
if (!removeOld || !source || this.removeModifier(itemModifier, !source.isPlayer())) {
const addModifier = () => {
if (!matchingModifier || this.removeModifier(matchingModifier, !target.isPlayer())) {
if (target.isPlayer()) {
this.addModifier(newItemModifier, ignoreUpdate, playSound, false, instant).then(() => {
if (source) {
applyPostItemLostAbAttrs(PostItemLostAbAttr, source, false);
}
resolve(true);
});
} else {
this.addEnemyModifier(newItemModifier, ignoreUpdate, instant).then(() => {
if (source) {
applyPostItemLostAbAttrs(PostItemLostAbAttr, source, false);
}
resolve(true);
});
}
} else {
resolve(false);
}
};
if (source && source.isPlayer() !== target.isPlayer() && !ignoreUpdate) {
this.updateModifiers(source.isPlayer(), instant).then(() => addModifier());
} else {
addModifier();
}
return;
}
resolve(false);
});
});
}
removePartyMemberModifiers(partyMemberIndex: integer): Promise<void> {
return new Promise(resolve => {
const pokemonId = this.getPlayerParty()[partyMemberIndex].id;
const modifiersToRemove = this.modifiers.filter(m => m instanceof PokemonHeldItemModifier && (m as PokemonHeldItemModifier).pokemonId === pokemonId);
for (const m of modifiersToRemove) {
this.modifiers.splice(this.modifiers.indexOf(m), 1);
}
this.updateModifiers().then(() => resolve());
});
}
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
generateEnemyModifiers(heldModifiersConfigs?: HeldModifierConfig[][]): Promise<void> {
return new Promise(resolve => {
if (this.currentBattle.battleSpec === BattleSpec.FINAL_BOSS) {
return resolve();
}
const difficultyWaveIndex = this.gameMode.getWaveForDifficulty(this.currentBattle.waveIndex);
const isFinalBoss = this.gameMode.isWaveFinal(this.currentBattle.waveIndex);
let chances = Math.ceil(difficultyWaveIndex / 10);
if (isFinalBoss) {
chances = Math.ceil(chances * 2.5);
}
const party = this.getEnemyParty();
if (this.currentBattle.trainer) {
const modifiers = this.currentBattle.trainer.genModifiers(party);
for (const modifier of modifiers) {
this.addEnemyModifier(modifier, true, true);
}
}
party.forEach((enemyPokemon: EnemyPokemon, i: integer) => {
if (heldModifiersConfigs && i < heldModifiersConfigs.length && heldModifiersConfigs[i]) {
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
heldModifiersConfigs[i].forEach(mt => {
let modifier: PokemonHeldItemModifier;
if (mt.modifier instanceof PokemonHeldItemModifierType) {
modifier = mt.modifier.newModifier(enemyPokemon);
} else {
modifier = mt.modifier as PokemonHeldItemModifier;
modifier.pokemonId = enemyPokemon.id;
}
modifier.stackCount = mt.stackCount ?? 1;
modifier.isTransferable = mt.isTransferable ?? modifier.isTransferable;
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
this.addEnemyModifier(modifier, true);
});
} else {
const isBoss = enemyPokemon.isBoss() || (this.currentBattle.battleType === BattleType.TRAINER && !!this.currentBattle.trainer?.config.isBoss);
let upgradeChance = 32;
if (isBoss) {
upgradeChance /= 2;
}
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
if (isFinalBoss) {
upgradeChance /= 8;
}
const modifierChance = this.gameMode.getEnemyModifierChance(isBoss);
let pokemonModifierChance = modifierChance;
if (this.currentBattle.battleType === BattleType.TRAINER && this.currentBattle.trainer)
pokemonModifierChance = Math.ceil(pokemonModifierChance * this.currentBattle.trainer.getPartyMemberModifierChanceMultiplier(i)); // eslint-disable-line
let count = 0;
for (let c = 0; c < chances; c++) {
if (!Utils.randSeedInt(modifierChance)) {
count++;
}
}
if (isBoss) {
count = Math.max(count, Math.floor(chances / 2));
}
getEnemyModifierTypesForWave(difficultyWaveIndex, count, [ enemyPokemon ], this.currentBattle.battleType === BattleType.TRAINER ? ModifierPoolType.TRAINER : ModifierPoolType.WILD, upgradeChance)
.map(mt => mt.newModifier(enemyPokemon).add(this.enemyModifiers, false, this));
}
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
return true;
});
this.updateModifiers(false).then(() => resolve());
});
}
/**
* Removes all modifiers from enemy pokemon of {@linkcode PersistentModifier} type
*/
clearEnemyModifiers(): void {
const modifiersToRemove = this.enemyModifiers.filter(m => m instanceof PersistentModifier);
for (const m of modifiersToRemove) {
this.enemyModifiers.splice(this.enemyModifiers.indexOf(m), 1);
}
this.updateModifiers(false).then(() => this.updateUIPositions());
}
/**
* Removes all modifiers from enemy pokemon of {@linkcode PokemonHeldItemModifier} type
* @param pokemon - If specified, only removes held items from that {@linkcode Pokemon}
*/
clearEnemyHeldItemModifiers(pokemon?: Pokemon): void {
const modifiersToRemove = this.enemyModifiers.filter(m => m instanceof PokemonHeldItemModifier && (!pokemon || m.getPokemon(this) === pokemon));
for (const m of modifiersToRemove) {
this.enemyModifiers.splice(this.enemyModifiers.indexOf(m), 1);
}
this.updateModifiers(false).then(() => this.updateUIPositions());
}
setModifiersVisible(visible: boolean) {
[ this.modifierBar, this.enemyModifierBar ].map(m => m.setVisible(visible));
}
updateModifiers(player?: boolean, instant?: boolean): Promise<void> {
if (player === undefined) {
player = true;
}
return new Promise(resolve => {
const modifiers = player ? this.modifiers : this.enemyModifiers as PersistentModifier[];
for (let m = 0; m < modifiers.length; m++) {
const modifier = modifiers[m];
if (modifier instanceof PokemonHeldItemModifier && !this.getPokemonById((modifier as PokemonHeldItemModifier).pokemonId)) {
modifiers.splice(m--, 1);
}
}
for (const modifier of modifiers) {
if (modifier instanceof PersistentModifier) {
(modifier as PersistentModifier).virtualStackCount = 0;
}
}
const modifiersClone = modifiers.slice(0);
for (const modifier of modifiersClone) {
if (!modifier.getStackCount()) {
modifiers.splice(modifiers.indexOf(modifier), 1);
}
}
this.updatePartyForModifiers(player ? this.getPlayerParty() : this.getEnemyParty(), instant).then(() => {
(player ? this.modifierBar : this.enemyModifierBar).updateModifiers(modifiers);
if (!player) {
this.updateUIPositions();
}
resolve();
});
});
}
updatePartyForModifiers(party: Pokemon[], instant?: boolean): Promise<void> {
return new Promise(resolve => {
Promise.allSettled(party.map(p => {
if (p.scene) {
p.calculateStats();
}
return p.updateInfo(instant);
})).then(() => resolve());
});
}
removeModifier(modifier: PersistentModifier, enemy?: boolean): boolean {
const modifiers = !enemy ? this.modifiers : this.enemyModifiers;
const modifierIndex = modifiers.indexOf(modifier);
if (modifierIndex > -1) {
modifiers.splice(modifierIndex, 1);
if (modifier instanceof PokemonFormChangeItemModifier || modifier instanceof TerastallizeModifier) {
const pokemon = this.getPokemonById(modifier.pokemonId);
if (pokemon) {
modifier.apply(pokemon, false);
}
}
return true;
}
return false;
}
/**
* Get all of the modifiers that match `modifierType`
* @param modifierType The type of modifier to apply; must extend {@linkcode PersistentModifier}
* @param player Whether to search the player (`true`) or the enemy (`false`); Defaults to `true`
* @returns the list of all modifiers that matched `modifierType`.
*/
getModifiers<T extends PersistentModifier>(modifierType: Constructor<T>, player: boolean = true): T[] {
return (player ? this.modifiers : this.enemyModifiers).filter((m): m is T => m instanceof modifierType);
}
/**
* Get all of the modifiers that pass the `modifierFilter` function
* @param modifierFilter The function used to filter a target's modifiers
* @param isPlayer Whether to search the player (`true`) or the enemy (`false`); Defaults to `true`
* @returns the list of all modifiers that passed the `modifierFilter` function
*/
findModifiers(modifierFilter: ModifierPredicate, isPlayer: boolean = true): PersistentModifier[] {
return (isPlayer ? this.modifiers : this.enemyModifiers).filter(modifierFilter);
}
/**
* Find the first modifier that pass the `modifierFilter` function
* @param modifierFilter The function used to filter a target's modifiers
* @param player Whether to search the player (`true`) or the enemy (`false`); Defaults to `true`
* @returns the first modifier that passed the `modifierFilter` function; `undefined` if none passed
*/
[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 17:23:12 +01:00
findModifier(modifierFilter: ModifierPredicate, player: boolean = true): PersistentModifier | undefined {
return (player ? this.modifiers : this.enemyModifiers).find(modifierFilter);
}
/**
* Apply all modifiers that match `modifierType` in a random order
* @param scene {@linkcode BattleScene} used to randomize the order of modifiers
* @param modifierType The type of modifier to apply; must extend {@linkcode PersistentModifier}
* @param player Whether to search the player (`true`) or the enemy (`false`); Defaults to `true`
* @param ...args The list of arguments needed to invoke `modifierType.apply`
* @returns the list of all modifiers that matched `modifierType` and were applied.
*/
applyShuffledModifiers<T extends PersistentModifier>(scene: BattleScene, modifierType: Constructor<T>, player: boolean = true, ...args: Parameters<T["apply"]>): T[] {
let modifiers = (player ? this.modifiers : this.enemyModifiers).filter((m): m is T => m instanceof modifierType && m.shouldApply(...args));
scene.executeWithSeedOffset(() => {
const shuffleModifiers = mods => {
if (mods.length < 1) {
return mods;
}
const rand = Utils.randSeedInt(mods.length);
2024-10-04 06:08:31 +01:00
return [ mods[rand], ...shuffleModifiers(mods.filter((_, i) => i !== rand)) ];
};
modifiers = shuffleModifiers(modifiers);
}, scene.currentBattle.turn << 4, scene.waveSeed);
return this.applyModifiersInternal(modifiers, player, args);
}
/**
* Apply all modifiers that match `modifierType`
* @param modifierType The type of modifier to apply; must extend {@linkcode PersistentModifier}
* @param player Whether to search the player (`true`) or the enemy (`false`); Defaults to `true`
* @param ...args The list of arguments needed to invoke `modifierType.apply`
* @returns the list of all modifiers that matched `modifierType` and were applied.
*/
applyModifiers<T extends PersistentModifier>(modifierType: Constructor<T>, player: boolean = true, ...args: Parameters<T["apply"]>): T[] {
const modifiers = (player ? this.modifiers : this.enemyModifiers).filter((m): m is T => m instanceof modifierType && m.shouldApply(...args));
return this.applyModifiersInternal(modifiers, player, args);
}
/** Helper function to apply all passed modifiers */
applyModifiersInternal<T extends PersistentModifier>(modifiers: T[], player: boolean, args: Parameters<T["apply"]>): T[] {
const appliedModifiers: T[] = [];
for (const modifier of modifiers) {
if (modifier.apply(...args)) {
console.log("Applied", modifier.type.name, !player ? "(enemy)" : "");
appliedModifiers.push(modifier);
}
}
return appliedModifiers;
}
/**
* Apply the first modifier that matches `modifierType`
* @param modifierType The type of modifier to apply; must extend {@linkcode PersistentModifier}
* @param player Whether to search the player (`true`) or the enemy (`false`); Defaults to `true`
* @param ...args The list of arguments needed to invoke `modifierType.apply`
* @returns the first modifier that matches `modifierType` and was applied; return `null` if none matched
*/
applyModifier<T extends PersistentModifier>(modifierType: Constructor<T>, player: boolean = true, ...args: Parameters<T["apply"]>): T | null {
const modifiers = (player ? this.modifiers : this.enemyModifiers).filter((m): m is T => m instanceof modifierType && m.shouldApply(...args));
for (const modifier of modifiers) {
if (modifier.apply(...args)) {
console.log("Applied", modifier.type.name, !player ? "(enemy)" : "");
return modifier;
}
}
return null;
}
triggerPokemonFormChange(pokemon: Pokemon, formChangeTriggerType: Constructor<SpeciesFormChangeTrigger>, delayed: boolean = false, modal: boolean = false): boolean {
if (pokemonFormChanges.hasOwnProperty(pokemon.species.speciesId)) {
// in case this is NECROZMA, determine which forms this
const matchingFormChangeOpts = pokemonFormChanges[pokemon.species.speciesId].filter(fc => fc.findTrigger(formChangeTriggerType) && fc.canChange(pokemon));
let matchingFormChange: SpeciesFormChange | null;
if (pokemon.species.speciesId === Species.NECROZMA && matchingFormChangeOpts.length > 1) {
// Ultra Necrozma is changing its form back, so we need to figure out into which form it devolves.
const formChangeItemModifiers = (this.findModifiers(m => m instanceof PokemonFormChangeItemModifier && m.pokemonId === pokemon.id) as PokemonFormChangeItemModifier[]).filter(m => m.active).map(m => m.formChangeItem);
matchingFormChange = formChangeItemModifiers.includes(FormChangeItem.N_LUNARIZER) ?
matchingFormChangeOpts[0] :
formChangeItemModifiers.includes(FormChangeItem.N_SOLARIZER) ?
matchingFormChangeOpts[1] :
null;
} else {
matchingFormChange = matchingFormChangeOpts[0];
}
if (matchingFormChange) {
let phase: Phase;
if (pokemon instanceof PlayerPokemon && !matchingFormChange.quiet) {
phase = new FormChangePhase(this, pokemon, matchingFormChange, modal);
} else {
phase = new QuietFormChangePhase(this, pokemon, matchingFormChange);
}
if (pokemon instanceof PlayerPokemon && !matchingFormChange.quiet && modal) {
this.overridePhase(phase);
} else if (delayed) {
this.pushPhase(phase);
} else {
this.unshiftPhase(phase);
}
return true;
}
}
return false;
}
[Move] Implement Substitute (#2559) * Implement Substitute Squashed commit from working branch * Fix integration test imports * Use Override Helper utils + Fix Baton Pass test * Update src/test/moves/substitute.test.ts Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com> * Fix test imports + nits * Document RemoveAllSubstitutesAttr * Fix some strict-null issues * more strict-null fixes * Fix baton pass test * Reorganized Substitute translation keys * Added checks for substitute in contact logic * Clean up Unseen Fist contact logic * Remove misleading comment in Download attr * RIP phases.ts * Fix imports post-phase migration * Rewrite `move.canIgnoreSubstitute` to `move.hitsSubstitute` * Also fixed interactions with Shell Trap and Beak Blast * Removed some leftover `canIgnoreSubstitute`s * fix issues after beta merge * Status move effectiveness now accounts for substitute * More edge case tests (Counter test failing) * Fix Counter + Trap edge cases + add Fail messagesd * Fix leftover nit * Resolve leftover test issues * Fix Sub offset carrying over to Trainer fights * Hide substitute sprite during catch attempts * Make substitutes baton-passable again * Remove placeholder locale keys and SPLASH_ONLY * Fix imports and other nits Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> * ESLint * Fix imports * Fix incorrect `resetSprite` timing * Fix substitute disappearing on hit (maybe?) * More animation fixes (mostly for Roar) --------- Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-09-13 17:46:22 +01:00
triggerPokemonBattleAnim(pokemon: Pokemon, battleAnimType: PokemonAnimType, fieldAssets?: Phaser.GameObjects.Sprite[], delayed: boolean = false): boolean {
const phase: Phase = new PokemonAnimPhase(this, battleAnimType, pokemon, fieldAssets);
if (delayed) {
this.pushPhase(phase);
} else {
this.unshiftPhase(phase);
}
return true;
}
validateAchvs(achvType: Constructor<Achv>, ...args: unknown[]): void {
const filteredAchvs = Object.values(achvs).filter(a => a instanceof achvType);
for (const achv of filteredAchvs) {
this.validateAchv(achv, args);
}
}
validateAchv(achv: Achv, args?: unknown[]): boolean {
if (!this.gameData.achvUnlocks.hasOwnProperty(achv.id) && achv.validate(this, args)) {
this.gameData.achvUnlocks[achv.id] = new Date().getTime();
this.ui.achvBar.showAchv(achv);
if (vouchers.hasOwnProperty(achv.id)) {
this.validateVoucher(vouchers[achv.id]);
}
return true;
}
return false;
}
validateVoucher(voucher: Voucher, args?: unknown[]): boolean {
if (!this.gameData.voucherUnlocks.hasOwnProperty(voucher.id) && voucher.validate(this, args)) {
this.gameData.voucherUnlocks[voucher.id] = new Date().getTime();
this.ui.achvBar.showAchv(voucher);
this.gameData.voucherCounts[voucher.voucherType]++;
return true;
}
return false;
}
2024-05-24 00:45:04 +01:00
updateGameInfo(): void {
const gameInfo = {
playTime: this.sessionPlayTime ? this.sessionPlayTime : 0,
gameMode: this.currentBattle ? this.gameMode.getName() : "Title",
biome: this.currentBattle ? getBiomeName(this.arena.biomeType) : "",
wave: this.currentBattle?.waveIndex || 0,
party: this.party ? this.party.map(p => {
return { name: p.name, level: p.level };
}) : [],
modeChain: this.ui?.getModeChain() ?? [],
};
(window as any).gameInfo = gameInfo;
}
/**
* This function retrieves the sprite and audio keys for active Pokemon.
* Active Pokemon include both enemy and player Pokemon of the current wave.
* Note: Questions on garbage collection go to @frutescens
* @returns a string array of active sprite and audio keys that should not be deleted
*/
getActiveKeys(): string[] {
const keys: string[] = [];
let activePokemon: (PlayerPokemon | EnemyPokemon)[] = this.getPlayerParty();
activePokemon = activePokemon.concat(this.getEnemyParty());
activePokemon.forEach((p) => {
[Hotfix] Retrieve the right cry when alternate-form Pokemon faint + retrieve the correct sprite key (#4117) * [DOCS] adding JSDocs to `arena.ts` (#3590) * adding some docs * Update src/field/pokemon.ts Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> * seems like battleStats changed to statStages * Apply suggestions from code review editing doc text Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update tsdocs, convert comment to tsdoc in `pokemon.ts` --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Fix scrappy (+ some immunity move and ability) in inverse battle (#4067) * fix scrappy + etc. update inverse battle test code * update test code following request from swain * fix and optimize imports (#4061) - remove any `.js` extension imports - remove unncessary dynamic imports of `modifier.ts` file. The file was being imported statically & dynamically. Made it pure static - increase vite chunk-size warning limit Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com> * Fusion hotfix * returned main * Faint cry properly retrieved for non fused Pokemon with forms * Revert "[DOCS] adding JSDocs to `arena.ts` (#3590)" This reverts commit b73fd97760bc7fbd7c35062d3763d30820ddbded. * Revert "[Bug] Fix scrappy (+ some immunity move and ability) in inverse battle (#4067)" This reverts commit 31fcbf49f49ee1106b25fe5d9737507b3e7615e8. * Revert "fix and optimize imports (#4061)" This reverts commit d1bd6974e435c9ddd2222194b8ef282a87b03047. * Fixed sprite key generation --------- Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: frutescens <info@laptop>
2024-09-09 00:03:37 +01:00
keys.push(p.getSpriteKey(true));
if (p instanceof PlayerPokemon) {
keys.push(p.getBattleSpriteKey(true, true));
}
keys.push(p.species.getCryKey(p.formIndex));
[Hotfix] Retrieving the correct form index for correct cry keys (#4121) * [DOCS] adding JSDocs to `arena.ts` (#3590) * adding some docs * Update src/field/pokemon.ts Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> * seems like battleStats changed to statStages * Apply suggestions from code review editing doc text Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update tsdocs, convert comment to tsdoc in `pokemon.ts` --------- Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * [Bug] Fix scrappy (+ some immunity move and ability) in inverse battle (#4067) * fix scrappy + etc. update inverse battle test code * update test code following request from swain * fix and optimize imports (#4061) - remove any `.js` extension imports - remove unncessary dynamic imports of `modifier.ts` file. The file was being imported statically & dynamically. Made it pure static - increase vite chunk-size warning limit Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com> * returned main * Fixed cry key * Revert "[DOCS] adding JSDocs to `arena.ts` (#3590)" This reverts commit 675e6a063590ad8b7f3c8c951cfeddc9a74db274. * Revert "[Bug] Fix scrappy (+ some immunity move and ability) in inverse battle (#4067)" This reverts commit 45af0dd170afd50e045bdbef4b05002b1f1e0fcf. * Revert "fix and optimize imports (#4061)" This reverts commit e12548cdb0d53f109c8c5d80b2e0dd2c22c2fc8b. --------- Co-authored-by: DustinLin <39450497+DustinLin@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: Leo Kim <47556641+KimJeongSun@users.noreply.github.com> Co-authored-by: frutescens <info@laptop>
2024-09-09 03:12:37 +01:00
if (p.fusionSpecies) {
keys.push(p.fusionSpecies.getCryKey(p.fusionFormIndex));
}
});
return keys;
}
/**
* Initialized the 2nd phase of the final boss (e.g. form-change for Eternatus)
* @param pokemon The (enemy) pokemon
*/
initFinalBossPhaseTwo(pokemon: Pokemon): void {
if (pokemon instanceof EnemyPokemon && pokemon.isBoss() && !pokemon.formIndex && pokemon.bossSegmentIndex < 1) {
this.fadeOutBgm(Utils.fixedInt(2000), 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 17:23:12 +01:00
this.ui.showDialogue(battleSpecDialogue[BattleSpec.FINAL_BOSS].firstStageWin, pokemon.species.name, undefined, () => {
const finalBossMBH = getModifierType(modifierTypes.MINI_BLACK_HOLE).newModifier(pokemon) as TurnHeldItemTransferModifier;
finalBossMBH.setTransferrableFalse();
this.addEnemyModifier(finalBossMBH, false, true);
pokemon.generateAndPopulateMoveset(1);
this.setFieldScale(0.75);
this.triggerPokemonFormChange(pokemon, SpeciesFormChangeManualTrigger, false);
this.currentBattle.double = true;
const availablePartyMembers = this.getPlayerParty().filter((p) => p.isAllowedInBattle());
if (availablePartyMembers.length > 1) {
this.pushPhase(new ToggleDoublePositionPhase(this, true));
if (!availablePartyMembers[1].isOnField()) {
this.pushPhase(new SummonPhase(this, 1));
}
}
this.shiftPhase();
});
return;
}
this.shiftPhase();
}
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
/**
* Updates Exp and level values for Player's party, adding new level up phases as required
* @param expValue raw value of exp to split among participants, OR the base multiplier to use with waveIndex
* @param pokemonDefeated If true, will increment Macho Brace stacks and give the party Pokemon friendship increases
* @param useWaveIndexMultiplier Default false. If true, will multiply expValue by a scaling waveIndex multiplier. Not needed if expValue is already scaled by level/wave
* @param pokemonParticipantIds Participants. If none are defined, no exp will be given. To spread evenly among the party, should pass all ids of party members.
*/
applyPartyExp(expValue: number, pokemonDefeated: boolean, useWaveIndexMultiplier?: boolean, pokemonParticipantIds?: Set<number>): void {
const participantIds = pokemonParticipantIds ?? this.currentBattle.playerParticipantIds;
const party = this.getPlayerParty();
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
const expShareModifier = this.findModifier(m => m instanceof ExpShareModifier) as ExpShareModifier;
const expBalanceModifier = this.findModifier(m => m instanceof ExpBalanceModifier) as ExpBalanceModifier;
const multipleParticipantExpBonusModifier = this.findModifier(m => m instanceof MultipleParticipantExpBonusModifier) as MultipleParticipantExpBonusModifier;
const nonFaintedPartyMembers = party.filter(p => p.hp);
const expPartyMembers = nonFaintedPartyMembers.filter(p => p.level < this.getMaxExpLevel());
const partyMemberExp: number[] = [];
// EXP value calculation is based off Pokemon.getExpValue
if (useWaveIndexMultiplier) {
expValue = Math.floor(expValue * this.currentBattle.waveIndex / 5 + 1);
}
if (participantIds.size > 0) {
if (this.currentBattle.battleType === BattleType.TRAINER || this.currentBattle.mysteryEncounter?.encounterMode === MysteryEncounterMode.TRAINER_BATTLE) {
expValue = Math.floor(expValue * 1.5);
} else if (this.currentBattle.isBattleMysteryEncounter() && this.currentBattle.mysteryEncounter) {
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
expValue = Math.floor(expValue * this.currentBattle.mysteryEncounter.expMultiplier);
}
for (const partyMember of nonFaintedPartyMembers) {
const pId = partyMember.id;
const participated = participantIds.has(pId);
if (participated && pokemonDefeated) {
partyMember.addFriendship(FRIENDSHIP_GAIN_FROM_BATTLE);
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
const machoBraceModifier = partyMember.getHeldItems().find(m => m instanceof PokemonIncrementingStatModifier);
if (machoBraceModifier && machoBraceModifier.stackCount < machoBraceModifier.getMaxStackCount(this)) {
machoBraceModifier.stackCount++;
this.updateModifiers(true, true);
partyMember.updateInfo();
}
}
if (!expPartyMembers.includes(partyMember)) {
continue;
}
if (!participated && !expShareModifier) {
partyMemberExp.push(0);
continue;
}
let expMultiplier = 0;
if (participated) {
expMultiplier += (1 / participantIds.size);
if (participantIds.size > 1 && multipleParticipantExpBonusModifier) {
expMultiplier += multipleParticipantExpBonusModifier.getStackCount() * 0.2;
}
} else if (expShareModifier) {
expMultiplier += (expShareModifier.getStackCount() * 0.2) / participantIds.size;
}
if (partyMember.pokerus) {
expMultiplier *= 1.5;
}
if (Overrides.XP_MULTIPLIER_OVERRIDE !== null) {
expMultiplier = Overrides.XP_MULTIPLIER_OVERRIDE;
}
const pokemonExp = new Utils.NumberHolder(expValue * expMultiplier);
this.applyModifiers(PokemonExpBoosterModifier, true, partyMember, pokemonExp);
partyMemberExp.push(Math.floor(pokemonExp.value));
}
if (expBalanceModifier) {
let totalLevel = 0;
let totalExp = 0;
expPartyMembers.forEach((expPartyMember, epm) => {
totalExp += partyMemberExp[epm];
totalLevel += expPartyMember.level;
});
const medianLevel = Math.floor(totalLevel / expPartyMembers.length);
const recipientExpPartyMemberIndexes: number[] = [];
expPartyMembers.forEach((expPartyMember, epm) => {
if (expPartyMember.level <= medianLevel) {
recipientExpPartyMemberIndexes.push(epm);
}
});
const splitExp = Math.floor(totalExp / recipientExpPartyMemberIndexes.length);
expPartyMembers.forEach((_partyMember, pm) => {
partyMemberExp[pm] = Phaser.Math.Linear(partyMemberExp[pm], recipientExpPartyMemberIndexes.indexOf(pm) > -1 ? splitExp : 0, 0.2 * expBalanceModifier.getStackCount());
});
}
for (let pm = 0; pm < expPartyMembers.length; pm++) {
const exp = partyMemberExp[pm];
if (exp) {
const partyMemberIndex = party.indexOf(expPartyMembers[pm]);
this.unshiftPhase(expPartyMembers[pm].isOnField() ? new ExpPhase(this, partyMemberIndex, exp) : new ShowPartyExpBarPhase(this, partyMemberIndex, exp));
}
}
}
}
2024-09-22 18:53:18 +01:00
/**
* Returns if a wave COULD spawn a {@linkcode MysteryEncounter}.
* Even if returns `true`, does not guarantee that a wave will actually be a ME.
* That check is made in {@linkcode BattleScene.isWaveMysteryEncounter} instead.
*/
isMysteryEncounterValidForWave(battleType: BattleType, waveIndex: number): boolean {
const [ lowestMysteryEncounterWave, highestMysteryEncounterWave ] = this.gameMode.getMysteryEncounterLegalWaves();
return this.gameMode.hasMysteryEncounters && battleType === BattleType.WILD && !this.gameMode.isBoss(waveIndex) && waveIndex < highestMysteryEncounterWave && waveIndex > lowestMysteryEncounterWave;
}
/**
* Determines whether a wave should randomly generate a {@linkcode MysteryEncounter}.
* Currently, the only modes that MEs are allowed in are Classic and Challenge.
* Additionally, MEs cannot spawn outside of waves 10-180 in those modes
* @param newBattleType
* @param waveIndex
*/
private isWaveMysteryEncounter(newBattleType: BattleType, waveIndex: number): boolean {
2024-10-04 06:08:31 +01:00
const [ lowestMysteryEncounterWave, highestMysteryEncounterWave ] = this.gameMode.getMysteryEncounterLegalWaves();
if (this.isMysteryEncounterValidForWave(newBattleType, waveIndex)) {
2024-09-22 18:53:18 +01:00
// Base spawn weight is BASE_MYSTERY_ENCOUNTER_SPAWN_WEIGHT/256, and increases by WEIGHT_INCREMENT_ON_SPAWN_MISS/256 for each missed attempt at spawning an encounter on a valid floor
const sessionEncounterRate = this.mysteryEncounterSaveData.encounterSpawnChance;
const encounteredEvents = this.mysteryEncounterSaveData.encounteredEvents;
// If total number of encounters is lower than expected for the run, slightly favor a new encounter spawn (reverse as well)
// Reduces occurrence of runs with total encounters significantly different from AVERAGE_ENCOUNTERS_PER_RUN_TARGET
// Favored rate changes can never exceed 50%. So if base rate is 15/256 and favored rate would add 200/256, result will be (15 + 128)/256
2024-09-22 18:53:18 +01:00
const expectedEncountersByFloor = AVERAGE_ENCOUNTERS_PER_RUN_TARGET / (highestMysteryEncounterWave - lowestMysteryEncounterWave) * (waveIndex - lowestMysteryEncounterWave);
const currentRunDiffFromAvg = expectedEncountersByFloor - encounteredEvents.length;
const favoredEncounterRate = sessionEncounterRate + Math.min(currentRunDiffFromAvg * ANTI_VARIANCE_WEIGHT_MODIFIER, MYSTERY_ENCOUNTER_SPAWN_MAX_WEIGHT / 2);
2024-09-22 18:53:18 +01:00
const successRate = isNullOrUndefined(Overrides.MYSTERY_ENCOUNTER_RATE_OVERRIDE) ? favoredEncounterRate : Overrides.MYSTERY_ENCOUNTER_RATE_OVERRIDE!;
// If the most recent ME was 3 or fewer waves ago, can never spawn a ME
const canSpawn = encounteredEvents.length === 0 || (waveIndex - encounteredEvents[encounteredEvents.length - 1].waveIndex) > 3 || !isNullOrUndefined(Overrides.MYSTERY_ENCOUNTER_RATE_OVERRIDE);
if (canSpawn) {
let roll = MYSTERY_ENCOUNTER_SPAWN_MAX_WEIGHT;
// Always rolls the check on the same offset to ensure no RNG changes from reloading session
this.executeWithSeedOffset(() => {
roll = randSeedInt(MYSTERY_ENCOUNTER_SPAWN_MAX_WEIGHT);
}, waveIndex * 3 * 1000);
return roll < successRate;
}
}
return false;
}
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
/**
* Loads or generates a mystery encounter
* @param encounterType used to load session encounter when restarting game, etc.
[Feature][UI] Save Preview (#4410) * Making 3 Option UI real * idk anymore * Revert "Making 3 Option UI real" This reverts commit beaad44c1eb098a09cfd2d04043d878d24f494c1. * Let's see * Current issues - scrolling upwards and correct cursor landing * argh * Fixed reactive scrolling * Adding ME handling * set up descriptions * Cleaned up UI i think * stupid alder * Added double trainer handling + changed enum name * Apply suggestions from code review Thank you Moka! Co-authored-by: MokaStitcher <54149968+MokaStitcher@users.noreply.github.com> * Arrow Visibility now depends on Session Slot hasData * documentation * Simplified calls to revertSessionSlot + changed function name per feedback * Fixed scrollCursor issue. * added comment * Update src/ui/save-slot-select-ui-handler.ts Co-authored-by: MokaStitcher <54149968+MokaStitcher@users.noreply.github.com> * Fixed sound played + added better conditional * Balance Team.... * ME related changes * Apply suggestions from code review Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: MokaStitcher <54149968+MokaStitcher@users.noreply.github.com> * Update src/data/mystery-encounters/mystery-encounter.ts Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> * Update src/data/mystery-encounters/mystery-encounter.ts Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> * Sending Doubles-fix * eslint.. --------- Co-authored-by: frutescens <info@laptop> Co-authored-by: MokaStitcher <54149968+MokaStitcher@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-09 20:04:13 +01:00
* @param canBypass optional boolean to indicate that the request is coming from a function that needs to access a Mystery Encounter outside of gameplay requirements
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
* @returns
*/
[Feature][UI] Save Preview (#4410) * Making 3 Option UI real * idk anymore * Revert "Making 3 Option UI real" This reverts commit beaad44c1eb098a09cfd2d04043d878d24f494c1. * Let's see * Current issues - scrolling upwards and correct cursor landing * argh * Fixed reactive scrolling * Adding ME handling * set up descriptions * Cleaned up UI i think * stupid alder * Added double trainer handling + changed enum name * Apply suggestions from code review Thank you Moka! Co-authored-by: MokaStitcher <54149968+MokaStitcher@users.noreply.github.com> * Arrow Visibility now depends on Session Slot hasData * documentation * Simplified calls to revertSessionSlot + changed function name per feedback * Fixed scrollCursor issue. * added comment * Update src/ui/save-slot-select-ui-handler.ts Co-authored-by: MokaStitcher <54149968+MokaStitcher@users.noreply.github.com> * Fixed sound played + added better conditional * Balance Team.... * ME related changes * Apply suggestions from code review Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: MokaStitcher <54149968+MokaStitcher@users.noreply.github.com> * Update src/data/mystery-encounters/mystery-encounter.ts Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> * Update src/data/mystery-encounters/mystery-encounter.ts Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> * Sending Doubles-fix * eslint.. --------- Co-authored-by: frutescens <info@laptop> Co-authored-by: MokaStitcher <54149968+MokaStitcher@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-09 20:04:13 +01:00
getMysteryEncounter(encounterType?: MysteryEncounterType, canBypass?: boolean): MysteryEncounter {
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
// Loading override or session encounter
let encounter: MysteryEncounter | null;
if (!isNullOrUndefined(Overrides.MYSTERY_ENCOUNTER_OVERRIDE) && allMysteryEncounters.hasOwnProperty(Overrides.MYSTERY_ENCOUNTER_OVERRIDE)) {
encounter = allMysteryEncounters[Overrides.MYSTERY_ENCOUNTER_OVERRIDE];
if (canBypass) {
return encounter;
}
[Feature][UI] Save Preview (#4410) * Making 3 Option UI real * idk anymore * Revert "Making 3 Option UI real" This reverts commit beaad44c1eb098a09cfd2d04043d878d24f494c1. * Let's see * Current issues - scrolling upwards and correct cursor landing * argh * Fixed reactive scrolling * Adding ME handling * set up descriptions * Cleaned up UI i think * stupid alder * Added double trainer handling + changed enum name * Apply suggestions from code review Thank you Moka! Co-authored-by: MokaStitcher <54149968+MokaStitcher@users.noreply.github.com> * Arrow Visibility now depends on Session Slot hasData * documentation * Simplified calls to revertSessionSlot + changed function name per feedback * Fixed scrollCursor issue. * added comment * Update src/ui/save-slot-select-ui-handler.ts Co-authored-by: MokaStitcher <54149968+MokaStitcher@users.noreply.github.com> * Fixed sound played + added better conditional * Balance Team.... * ME related changes * Apply suggestions from code review Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> Co-authored-by: MokaStitcher <54149968+MokaStitcher@users.noreply.github.com> * Update src/data/mystery-encounters/mystery-encounter.ts Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> * Update src/data/mystery-encounters/mystery-encounter.ts Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com> * Sending Doubles-fix * eslint.. --------- Co-authored-by: frutescens <info@laptop> Co-authored-by: MokaStitcher <54149968+MokaStitcher@users.noreply.github.com> Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-09 20:04:13 +01:00
} else if (canBypass) {
encounter = allMysteryEncounters[encounterType ?? -1];
return encounter;
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
} else {
encounter = !isNullOrUndefined(encounterType) ? allMysteryEncounters[encounterType] : null;
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
}
// Check for queued encounters first
if (!encounter && this.mysteryEncounterSaveData?.queuedEncounters && this.mysteryEncounterSaveData.queuedEncounters.length > 0) {
let i = 0;
while (i < this.mysteryEncounterSaveData.queuedEncounters.length && !!encounter) {
const candidate = this.mysteryEncounterSaveData.queuedEncounters[i];
const forcedChance = candidate.spawnPercent;
if (Utils.randSeedInt(100) < forcedChance) {
encounter = allMysteryEncounters[candidate.type];
}
i++;
}
}
if (encounter) {
encounter = new MysteryEncounter(encounter);
encounter.populateDialogueTokensFromRequirements(this);
return encounter;
}
// See Enum values for base tier weights
2024-10-04 06:08:31 +01:00
const tierWeights = [ MysteryEncounterTier.COMMON, MysteryEncounterTier.GREAT, MysteryEncounterTier.ULTRA, MysteryEncounterTier.ROGUE ];
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
// Adjust tier weights by previously encountered events to lower odds of only Common/Great in run
this.mysteryEncounterSaveData.encounteredEvents.forEach(seenEncounterData => {
if (seenEncounterData.tier === MysteryEncounterTier.COMMON) {
tierWeights[0] = tierWeights[0] - 6;
} else if (seenEncounterData.tier === MysteryEncounterTier.GREAT) {
tierWeights[1] = tierWeights[1] - 4;
}
});
const totalWeight = tierWeights.reduce((a, b) => a + b);
const tierValue = Utils.randSeedInt(totalWeight);
const commonThreshold = totalWeight - tierWeights[0];
const greatThreshold = totalWeight - tierWeights[0] - tierWeights[1];
const ultraThreshold = totalWeight - tierWeights[0] - tierWeights[1] - tierWeights[2];
let tier: MysteryEncounterTier | null = tierValue > commonThreshold ? MysteryEncounterTier.COMMON : tierValue > greatThreshold ? MysteryEncounterTier.GREAT : tierValue > ultraThreshold ? MysteryEncounterTier.ULTRA : MysteryEncounterTier.ROGUE;
if (!isNullOrUndefined(Overrides.MYSTERY_ENCOUNTER_TIER_OVERRIDE)) {
tier = Overrides.MYSTERY_ENCOUNTER_TIER_OVERRIDE;
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
}
let availableEncounters: MysteryEncounter[] = [];
// New encounter should never be the same as the most recent encounter
const previousEncounter = this.mysteryEncounterSaveData.encounteredEvents.length > 0 ? this.mysteryEncounterSaveData.encounteredEvents[this.mysteryEncounterSaveData.encounteredEvents.length - 1].type : null;
const biomeMysteryEncounters = mysteryEncountersByBiome.get(this.arena.biomeType) ?? [];
// If no valid encounters exist at tier, checks next tier down, continuing until there are some encounters available
while (availableEncounters.length === 0 && tier !== null) {
availableEncounters = biomeMysteryEncounters
.filter((encounterType) => {
const encounterCandidate = allMysteryEncounters[encounterType];
if (!encounterCandidate) {
return false;
}
if (encounterCandidate.encounterTier !== tier) { // Encounter is in tier
return false;
}
const disallowedGameModes = encounterCandidate.disallowedGameModes;
if (disallowedGameModes && disallowedGameModes.length > 0
&& disallowedGameModes.includes(this.gameMode.modeId)) { // Encounter is enabled for game mode
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
return false;
}
if (this.gameMode.modeId === GameModes.CHALLENGE) { // Encounter is enabled for challenges
const disallowedChallenges = encounterCandidate.disallowedChallenges;
if (disallowedChallenges && disallowedChallenges.length > 0 && this.gameMode.challenges.some(challenge => disallowedChallenges.includes(challenge.id))) {
return false;
}
}
[Feature] Add Mystery Encounters to the game (#3938) * add .github/workflows/mystery-event.yml * update mystery-event.yml * mystery encounters: resolve review comments: Lost at Sea: -fix typo in handlePokemonGuidingYouPhase function Mysterious Chest: - remove obsolete commented code mystery-encounter.ts - remove unused `onDone` field from MysteryEncounterBuilder * fix typo in CanLearnMoveRequirementOptions * remove redundance from Pokemon.isAllowedInBattle() * chore: jsdoc formatting * fix lost-at-sea tests * add fallback for biomeMysteryEncounters if empty * lost-at-sea-encounter: fix and extend tests * move "battle:fainted" into `koPlayerPokemon` * add retries to quick-draw tests * fix lost-at-sea-encounter tests * clean up battle animation logic * Update and rename mystery-event.yml to mystery-events.yml * Update mystery-events.yml * Fix typo * Update mystery-events.yml Fix debug runs * clean up unit tests and utils * attach github issues to all encounter jsdocs * start dialogue refactor * update sleeping snorlax encounter * migrate encounters dialogue to new format * cleanup and add jsdocs * finish fiery fallout encounter * fix unit test breaks * add skeleton tests to fiery fallout * commit latest test changes * finish unit tests for fiery fallout * bug fix for empty modifier shop * stash working changes * stash changes * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/test/utils/overridesHelper.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * Update src/data/battle-anims.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * nit updates and cleanup * Update src/data/mystery-encounters/encounters/fiery-fallout-encounter.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> * add jsdocs and more cleanup * add more jsdoc * add the strong stuff encounter * add the strong stuff encounter and more unit tests * cleanup container length checks in ME ui * add retries to tests * add retries to tests * fix trainer wave disable override * add shuckle juice modifier * add dialogue bug fixes * add dialogue bug fixes * add pokemon salesman encounter and affects pokedex UI display * add unit tests for pokemon salesman * temp stash * add offer you can't refuse * add unit tests for offer you can't refuse encounter * remove unnecessary prompt handlers * add tests for disabled encounter options * add delibird-y encounter * add delibird-y encounter * add absolute avarice encounter * finish absolute avarice encounter * add unit tests and enhancements for item overrides in tests * fix unit test * cleanup absolute avarice PR * small bug fixes with latest sync from main * update visuals loading for safari and stat trainer visuals * update visuals loading for safari and stat trainer visuals * update a trainer's test encounter and add unit tests * add Trash to Treasure encounter * clean up trash to treasure encounter * clean up trash to treasure encounter * add berries abound encounter * start clowning around encounter * first implementation pass at clowning around * add unit tests for clowning around * add unit tests for clowning around * clean up ME unit tests * clean up unit tests * update unit tests * add part timer and dancing lessons encounters * add unit tests for Dancing Lessons and Part-Timer * reordered biome list and adjusted redirection for project and labels * Add Weird Dream encounter and slight reworks to Berries Abound/Fight or Flight * adjusting yml to match new labels * fix yml whoopsie * Expanded 'Weird Dream' banlist and fixed a bug with the BST bump range * adds Winstrate Challenge mystery encounter * small cleanup for winstrates * add unit tests for Winstrate Challenge * fix pokemon not returning after winstrate battle * commit latest beta merge updates * fix ME null checks and unit tests with beta update * fix ME null checks and unit tests with beta update * MEs to pokerogue beta branch * test dialogue changes * test patch fix * test patch fix * test patch fix * adds teleporting hijinks encounter * add unit tests for Teleporting Hijinks * small change to teleporting hijinks dialogue * migrate ME translations to json * add retries to berries-abound.Option1: should reward the player with X berries based on wave * add missing ME dialogue back in * revert template changes * add ME unique trainer dialogue to both dialogue jsons * fix hanging comma in json * fix broken imports * resolve lint issues * fix flaky test * balance tweaks to a few MEs, updates to bug superfan * add unit tests for Bug-Type Superfan and clean up dialogue * Adds Fun and Games mystery encounter * add unit tests for Fun and Games encounter * update jsdoc * small ME balance changes * small ME balance changes * Adds Uncommon Breed ME and misc. ME bug fixes * Update getFinalSessionData() to collect Mystery Encounter data * adds GTS encounter * various ME bug fixes and balance changes * latest ME bug fixes * clean up GTS Encounter and add unit tests * small cleanup to MEs branch * add BGM music names for ME music * bug fixes and balance changes for MEs * ME data schema updates * balance changes and bug fixes to MEs * balance changes and bug fixes to MEs * update tests for MEs * add jsdoc to party exp function * dialogue updates and test fixes for MEs * dialogue updates and test fixes for MEs * PR suggestions and fixees * stash PR feedback and bugfixes * fix all tests for MEs and cleanup * PR feedback * update flaky ME test * update tests, bug fix MEs, and sprite assets * remove unintentional console log * re-enable stubbed function for Phaser text styling * handle undefined introVisuals properly * PR feedback from NightKev * disable Uncommon Breed tests * locales updates and bug fixes for safari zone * more PR feedback and update field trip with Rarer Candy * fix unit test * Change how reroll button gets disabled in Modifier Shop Phase * update continue button text logic * Update src/ui/modifier-select-ui-handler.ts Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> * fix money formatting and some nits * more nits * more nits * update ME tsdocs with links * update ME tsdocs with links --------- Co-authored-by: Felix Staud <felix.staud@headwire.com> Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com> Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com> Co-authored-by: InnocentGameDev <asdargmng@gmail.com> Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-09-14 03:05:58 +01:00
if (!encounterCandidate.meetsRequirements(this)) { // Meets encounter requirements
return false;
}
if (previousEncounter !== null && encounterType === previousEncounter) { // Previous encounter was not this one
return false;
}
if (this.mysteryEncounterSaveData.encounteredEvents.length > 0 && // Encounter has not exceeded max allowed encounters
(encounterCandidate.maxAllowedEncounters && encounterCandidate.maxAllowedEncounters > 0)
&& this.mysteryEncounterSaveData.encounteredEvents.filter(e => e.type === encounterType).length >= encounterCandidate.maxAllowedEncounters) {
return false;
}
return true;
})
.map((m) => (allMysteryEncounters[m]));
// Decrement tier
if (tier === MysteryEncounterTier.ROGUE) {
tier = MysteryEncounterTier.ULTRA;
} else if (tier === MysteryEncounterTier.ULTRA) {
tier = MysteryEncounterTier.GREAT;
} else if (tier === MysteryEncounterTier.GREAT) {
tier = MysteryEncounterTier.COMMON;
} else {
tier = null; // Ends loop
}
}
// If absolutely no encounters are available, spawn 0th encounter
if (availableEncounters.length === 0) {
console.log("No Mystery Encounters found, falling back to Mysterious Challengers.");
return allMysteryEncounters[MysteryEncounterType.MYSTERIOUS_CHALLENGERS];
}
encounter = availableEncounters[Utils.randSeedInt(availableEncounters.length)];
// New encounter object to not dirty flags
encounter = new MysteryEncounter(encounter);
encounter.populateDialogueTokensFromRequirements(this);
return encounter;
}
}