Commit Graph

4572 Commits

Author SHA1 Message Date
NightKev a1ca7e632b
[Move] Triple Arrows effect chance for stat change is now 50% (#4543)
* Triple Arrows effect chance for stat change is now properly 50%

* Add tsdocs to `StatStageChangeAttr`

* Add test for Serene Grace interaction

* Fix linting

---------

Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
2024-10-08 05:32:51 -07:00
ImperialSympathizer 0a4c12387b
Revert #4607 (#4609)
Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com>
2024-10-07 15:42:27 -04:00
ImperialSympathizer 8980513a83
[P3 Hotfix] wrong content keys for Weird Dream ME (#4607)
Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com>
2024-10-07 15:03:00 -04:00
Acelynn Zhang f5fa478eb8
[P1] Fix crash when starting a challenge run after revisiting challenge select screen (#4603)
Ensure EncounterPhase initializes correctly at the start of the game
after revisting the challenge selection screen.

Fixes #4520
2024-10-07 12:01:15 -04:00
AJ Fontaine a259ccfc34
[Beta][Test] Fix Scale Shot flaky test (#4564)
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com>
2024-10-06 20:29:57 -07:00
NightKev c01fff49c4
[Beta P1] Fix regression in Metal Burst caused by #3974 (#4589)
Also adds a regression test for the scenario
2024-10-06 17:31:11 -04:00
chaosgrimmon 1226ab37e1
[Sprite] Compress Bronzor animation (#4593)
* [Sprite] Compress Bronzor front animation

* [Sprite] Compress Bronzor back animation

* [Sprite] Compress shiny Bronzor back animation

* [Sprite] Compress shiny Bronzor front animation
2024-10-06 17:29:39 -04:00
ImperialSympathizer a7157bbe9a
fix shop option cursor indexing (#4601)
Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com>
2024-10-06 13:51:34 -07:00
NightKev f9691b872b
Change deploy script to specify "main" instead of `default_branch` (#4557) 2024-10-06 05:47:34 +01:00
Frederico Santos c2c41d9be8 Update subproject commit reference for locales 2024-10-06 02:49:03 +01:00
innerthunder f629a3e453
[P2] Stop G-Max Pokemon from evolving (#4581) 2024-10-05 19:52:53 -04:00
NightKev e8f40c10c9
[Test] Update `create-test` script for linting changes (#4587)
Add additional boilerplate code

Change prompt to be slightly more accurate

Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com>
2024-10-05 19:52:13 -04:00
flx-sta 42b75e8440
[Qol] Make i18n money formatter controlled by translators (#4550)
* fix: i18n money formatter

* fix wrongful console.warn on i18n money formatter

* update locales submodule

update reference to `56eeb809eb5a2de40cfc5bc6128a78bef14deea9` (from `3ccef8472dd7cc7c362538489954cb8fdad27e5f`)
2024-10-05 23:01:41 +02:00
Xavion3 f562a76332
Make repeat abilities not stack (#4588)
If due to fusions you have the same ability as both passive and normal, it'll no longer stack with itself.
2024-10-05 15:10:32 +08:00
innerthunder c99df9712a
[Move] Implement Ion Deluge (#4579) 2024-10-04 17:23:20 -04:00
MokaStitcher 1947472f1c
[P3] Fix start button cursor not being cleared properly in starter select (#4558) 2024-10-04 16:47:12 -04:00
NightKev d362456501
[P2] Diamond Storm should only trigger once when hitting multiple pokemon (#4544)
* Diamond Storm should only trigger once when hitting multiple pokemon

* Also fix Clangorous Soulblaze just in case

* Fix linting

* Fix linting

Oops missed this one
2024-10-04 16:29:20 -04:00
innerthunder 27537286b9
[Move] Implement Electrify (#4569)
* Implement Electrify

* ESLint

* Fix docs
2024-10-04 16:24:52 -04:00
innerthunder 0bd4d6c86b
[Move] Fully Implement the Pledge Moves (#4511)
* Implement Fire/Grass Pledge combo

* Add other Pledge combo effects (untested)

* Fix missing enums

* Pledge moves integration tests

* Add turn order manipulation + more tests

* Safeguarding against weird Instruct interactions

* Update src/test/moves/pledge_moves.test.ts

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>

* Fix style issues

* Delete arena-tag.json

* Update package-lock.json

* Use `instanceof` for all arg type inference

* Add Pledge Move sleep test

* Fix linting

* Fix linting

Apparently GitHub has a limit on how many errors it will show

* Pledges now only bypass redirection from abilities

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-04 16:20:37 -04:00
AJ Fontaine 75bd730c04
[Balance] Fix TM compatibility on forms, Tera Blast on Indigo Disk mons (#4568)
* Fix TM compatibility on forms, Tera Blast on Indigo Disk mons

* Additional single strike moves

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-04 10:55:37 -04:00
chaosgrimmon 2c97b2bda2
[Sprite] Fix variant Farigiraf icon names (#4572) 2024-10-04 10:51:29 -04:00
NightKev 22442d3aa0
[Refactor] Refactor move phase and add documentation (#3974)
* Refactor `MovePhase` to improve readability/maintainability

Add tsdocs/comments all over

Mark all functions/fields with public/etc

Fix multi-hit moves called from Metronome/etc, fixes #3914

Remove unused function `BattleScene.pushMovePhase`

Don't use failure text as a condition for move success
A move defining potential failure text doesn't mean it failed

Replace relative imports with absolute imports in `battle-scene.ts`

Change some fields from optional to default `false`

* Fix Whirlwind test

* Fix linting
2024-10-04 10:50:03 -04:00
PigeonBar 2bc5f50154
[Test] Fix some test flakiness involving `doKillOpponents()` (#4571)
* [Test] Fix some test flakiness involving game.doKillOpponents()

* PR Feedback

* Fix linting

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-04 10:42:20 -04:00
Adrian T. a5db2e1d6d
[Misc] Update readme to include relevant links (#4573) 2024-10-04 10:42:05 -04:00
EmberCM 38c682cca7
[QoL] Add fusion options to overrides (#4298)
* Add fusion options to overrides

* Add fusions overrides to overridesHelper

---------

Co-authored-by: MokaStitcher <54149968+MokaStitcher@users.noreply.github.com>
Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-03 23:04:50 -07:00
NightKev db1e50dfd7
add lint rules (#3769)
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-03 22:16:15 -07:00
torranx 644c078a6c add new lint rules....again 2024-10-04 13:08:31 +08:00
Lneacx 74ea358f18
[Beta] Fix hit check so Poison-types do not brick semi-invuln. (#4567) 2024-10-03 23:45:53 -04:00
Acelynn Zhang 9c56c15a6c
[P3] Fix persisting sleep animation when sprite is already loaded (#4562)
Ensure that a Pokémon's animation speed is reset properly after saving
and quitting. Previously, if a Pokémon was put to sleep, which slows
its framerate, saving and quitting would result in the slower framerate
persisting even though the Pokémon was no longer asleep. This fix adds
an else condition to reset the frameRate to 12 if the sprite is already
loaded upon resuming the game.

Fixes #4465
2024-10-03 17:23:04 -04:00
Mumble af51c1f2f0
[Move] Unique message for heal block, taunt, torment, and imprison (#4530)
Co-authored-by: frutescens <info@laptop>
2024-10-03 14:56:35 -04:00
flx-sta 46c84155b3
[Beta P1] Fix rare candy crashing (#4561) 2024-10-03 14:53:35 -04:00
Adrian T. 76e25a6d6f
[Move] Update Tera Starstorm (still Partial), Readd Partial tag to Tera Blast (#4549)
* fully implement tera starstorm

* add docs

* add tests

* add override keyword

* account for fusion

* swap party positions

* add partial tag to tera blast

* address comments
2024-10-03 12:58:21 -04:00
schmidtc1 c58b5e943b
[P2] Fixes party status cure moves only curing the player's pokemon, even when used by enemy pokemon (#3369)
* Fixes bug with Status Cure moves only curing player pokemon, refactors PartyStatusCureAttr, removes PartyStatusCurePhase

* Adds check for user ID, since user always cures its own status regardless of ability

* Adds unit tests for sparkly swirl

* Merge and fix conflicts

* Fix conflicts with SPLASH_ONLY

* Fix failing sparkly swirl test due to splash_only

* Adds unit tests for heal bell and aromatherapy

* Update src/data/move.ts

---------

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
2024-10-03 11:49:33 -04:00
flx-sta 54efd44497
[Refactor] Modifiers type inference v2 (#4294)
* refactor: apply Modifiers type inference (pattern)

Mirror from #1747

Co-authored-by: Dmitriy <kagno.dmitriy@gmail.com>

* fix: PokemonBaseStatTotalModifier.apply having a `[1]` left

* fix: HeldItemTransferModifier.apply missing `...args: unknown[]`

* Replace relative imports with absolute imports in `modifier.ts`

* chore: fix TS1016* error

[*]  A required parameter cannot follow an optional parameter.

* chore: fix namings, types and docs

suggested by @torranx

* replace: `IntegerHolder` with `NumberHolder` & `integer` with `number`

* chore: apply review suggestions

by @torranx

* chore: address review feedback

from @torranx

* update: imports in `modifier-types`

* update `lapse` calls in modifier.ts

* fix lapse call in `battle-end-phase`

* minor adjustments in `modifier.ts`

* fix `EnemyEndureChanceModifier.apply` types

* fix `EnemyAttackStatusEffectChanceModifier.apply` types

* fix `EnemyTurnHealModifier.apply` types

* fix `EnemyStatusEffectHealChanceModifier.apply` types

---------

Co-authored-by: Dmitriy <kagno.dmitriy@gmail.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-03 11:38:17 -04:00
AJ Fontaine ea9e0c7909
[Move] Implement Scale Shot (#4551)
* Scale Shot

* Docstrings for StatStageChangeAttr

* Add test for scale shot
2024-10-03 11:17:51 -04:00
Lneacx 8fc0d9a429
[P2] Fix Toxic to bypass semi-invulnerability when used by a Poison-type. (#4445)
* Fix Toxic to bypass semi-invulnerability when used by a Poison-type.

* Apply suggestion to refactor BerryPhase in Toxic move tests.

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>

* Corrected missing quotes on a BerryPhase in Toxic.test.

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-03 10:35:03 -04:00
Jannik Tappert 5f700590be
[QOL] Have Friendship Value be shown in summary (#4490)
* Have Friendship Value be shown in summary

* Fix how "fill" of icon is calced

* Update src/locales/de/pokemon-summary.json

* Actually add the images

* Add correct image files

* Update src/ui/summary-ui-handler.ts

Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com>

* Update src/ui/summary-ui-handler.ts

Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com>

* Update src/ui/summary-ui-handler.ts

* Update src/ui/summary-ui-handler.ts

Co-authored-by: MokaStitcher <54149968+MokaStitcher@users.noreply.github.com>

* Made changed suggested in code review

* Update src/locales/en/pokemon-summary.json

---------

Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com>
Co-authored-by: MokaStitcher <54149968+MokaStitcher@users.noreply.github.com>
2024-10-03 10:34:29 -04:00
MokaStitcher 831efeb6bf
[P2] Make weather damage round down for consistency (#4559)
* fmake weather damage consistent with the rest of the game

* [test] add  some sandstorm and hail tests
2024-10-03 10:33:12 -04:00
NightKev f634b7c044
[Misc] Disable some leftover debug code (#4546)
* Disable i18n debug in `.env` files

* Disable leftover ME debug code
2024-10-02 13:13:16 -04:00
Adrian T. ea261a039d
[Refactor] Cleanup test boilerplate script (#4547) 2024-10-02 13:08:30 -04:00
AJ Fontaine 8a2900ad29
[Refactor] Move some relevant files, tables etc to new balance folder (#4510)
* Move biomes.ts

* Move starter costs, passives, friendship, starter-candy to starters.ts

* Change relative imports to absolute imports

* Add docstrings, passives.ts

* Constants in rates.ts for egg pity, egg tier rates, hatch waves, variant chances

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
2024-10-02 06:20:19 -07:00
innerthunder 7473c31c77
[P2] Fix Tera Shell to apply to all hits of multi-strike moves (#4541)
* Apply Tera Shell to all hits for multi-hit moves

* fix undefined property error

* ugh

* Remove obsolete bangs
2024-10-01 21:58:56 -04:00
NightKev a6bcd6eeea
[Refactor] Remove obsolete comments in egg gacha and starter select UIs (#4542) 2024-10-01 21:58:16 -04:00
Frederico Santos c46507d49b [Update] Update subproject commit reference in locales 2024-10-02 01:58:28 +01:00
Frederico Santos 5e151f5604
[Refactor] External locales (#4529)
* Removed local translation files

added translations submodule

[Enhancement] Add post-merge command to update submodules in lefthook configuration

[Enhancement] Add postinstall script to install lefthook after package installation

[Enhancement] Update postinstall script to run post-merge command after lefthook installation

* Add subproject commit for locales directory

* Remove translation team assignments from CODEOWNERS

* Add recursive submodule checkout to workflow files and update README for translations

* fix: run without locales present (#4539)

some code was hard-wired with  locales having to be present. This is no longer the case now

---------

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
2024-10-01 23:41:09 +01:00
flx-sta 95386861bb
[Qol][Refactor] i18n lazy-loading (#4327)
* move: locales files to `/public` (from `/src`)

* install: i18next-http-backend module

* implement: i18next language lazy-loading

* remove: all `config.ts` files (for locales)

* disable: enConfig import in i18next.d.ts

* remove: console.log from utils.camelCaseToKebabCase()

* remove localization tests

we don't need to test if i18next is working.
This is the job of i18next itself

* mock i18next for tests

* fix: tests that have to use the i18next key now

instead of the english translation

* fix: absolute-avarice-encounter test

* fix: loading mystery-encounter translations

with lazy-load

* fix: 2 mystery encounter translation loading

* replace: i18next mocks any vi.fn() calls

* fix: new namespace usage in ME tests

now using "mysteryEncounters/..."

* fix: delibirdy encounter not being language specific

the encounter was checking if the modifier name includes `Berry` which is only true for english. Instead it has to check if the modifier is an instance of BerryModifier

* fix: the-expert-pokemon-breeder

the new i18n pattern requires a different namespacing which has been adopted

* fix: GTS encounter tests

* add: `MockText.on()`

* fix: berries abound test

* chore: apply review suggestion

from @DayKev

* update i18next.d.ts

* chore: fix i18next.d.ts

* fix: `dialogue-misc` switchup between `en` and `ja`

* move: `SpeciesFormKey` into enum

there was an issue with circular dependencies

* replace: `#app/enums/` with `#enums/` for `SpeciesFormKey` imports

* re-sync locales from `beta`

* rename: `ca_ES` -> `ca-ES`

* rename: `pt_BR` -> `pt-BR`

* rename: `zh_CN` -> `zh-CN`

* rename: `zh_TW` -> `zh-TW`

* fix loading Species-Form-Key in poemon-evo.

* update: i18next `supporterLngs` ...

and remove `nonExplicitSupportedLngs`

* fix: `${namespace}.` -> `${namespace}:`

thanks @MokaStitcher
2024-10-01 21:55:16 +01:00
pom-eranian 160b730921
[Hotfix] Revert "[Sprite] 451 - Skorupi Animation Fix " (#4535) 2024-10-01 15:24:08 -04:00
DustinLin 45f6b23309
[P2] Chilly Reception's Snow is called during Enemy AI Move Selection (#4528)
* fixing weather check in getCondition()

* adding enemy tests
2024-09-30 23:23:29 -04:00
innerthunder 145b80f491
[P2] Fix Substitute blocking field effects (#4504)
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-09-30 13:14:38 -04:00
NightKev 8a8adad7fe
[Refactor] Clean up some `TODO`s from the `strict-null` refactor (#4267) 2024-09-30 13:11:45 -04:00