Compare commits

...

802 commits

Author SHA1 Message Date
damocleas
7dfd8e72cc
Sync locales and update version to 1.8.4 (#5620)
Some checks failed
Deploy Main / deploy (push) Has been cancelled
Github Pages / Github Pages (push) Has been cancelled
Biome Code Quality / Run linters (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
2025-04-03 00:32:29 -04:00
damocleas
68f10dc199
Merge branch 'main' into beta
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
Biome Code Quality / Run linters (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
2025-04-03 00:28:55 -04:00
NightKev
7b38596a12
Sync locales and update version to 1.8.4 (#5620) 2025-04-02 19:37:48 -07:00
damocleas
333975017f
Hotfixes 1.8.3 2025-04-02 20:37:45 -04:00
damocleas
d0703e0e0b
Merge branch 'main' into beta 2025-04-02 20:31:13 -04:00
Dean
4c8f81bb09
[Bug] Fix uses of getAlly() (#5618)
* Fix plus/minus crash

* Update getAlly() uses
2025-04-02 17:28:58 -07:00
Wlowscha
c6721521ab
[BUG] Fix broken forms of Pichu starter (#5616)
* Unlock base Pichu form when catching a Pikachu form

* Implementing migrator for broken Pichu forms
2025-04-02 19:59:31 -04:00
Wlowscha
db7ed43ad7
[Bug][UI/UX] Make sure forms and evolutions are counted in challenges again (#5617)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Tests (push) Waiting to run
Making sure to actually count forms...
2025-04-02 19:42:36 -04:00
Unicorn_Power
a7394130a7
(Beta) Undoing the Pika-etern stuff (#5615) 2025-04-02 17:21:04 -04:00
damocleas
cf1616212c
Hotfixes 1.18.2
Some checks are pending
Deploy Main / deploy (push) Waiting to run
Github Pages / Github Pages (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Tests (push) Waiting to run
2025-04-02 03:05:51 -04:00
damocleas
7f4b37a36f
Merge branch 'main' into beta
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Tests (push) Waiting to run
2025-04-02 02:58:27 -04:00
Dean
2773354193
[Bug][Hotfix] Fix various ability flyouts not disappearing (#5614)
* Add hide phases for rogue ability showing

* Hide ability bar on game over

* Hide ability bar in TurnEndPhase
2025-04-02 02:56:19 -04:00
damocleas
951d8b633d
[Balance] Minor Passive Adjustments for 1.8.2 (#5613)
* Update passives.ts
2025-04-02 02:42:10 -04:00
damocleas
d92bf29030 [i18n] Update locales submodule and 1.8.2 bump 2025-04-02 00:25:05 -04:00
Dean
5416c76ecb
[Bug][Hotfix] Fix crash when pulling trainer names for (certain) non-English languages (#5608)
* Fix key usage for trainer locales

* Update gts

* Fix partner name generation

---------

Co-authored-by: Wlowscha <54003515+Wlowscha@users.noreply.github.com>
2025-04-01 21:31:52 -04:00
Amani H.
4a4e766135
[Bug] Prevent Mystical Rock after Max Stack (#5606)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Tests (push) Waiting to run
* [Bug] Prevent `Mystical Rock` after Max Stack

* Update modifier-type.ts

* fixed ordering, testing locally

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
2025-04-01 17:18:49 -04:00
Jimmybald1
5217703d2b
[Bug] Mystical Rock modifier missing Drought check 2025-04-01 20:18:10 +00:00
Dean
1229bfe004
[Bug][Hotfix] Fix Parental bond + Pollen Puff softlock (#5607)
* Fix parental bond softlock

* Add test for pollen puff

---------

Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
2025-04-01 12:10:59 -07:00
damocleas
7d6b375f6f
Hotfixes 1.8.1
Some checks are pending
Deploy Main / deploy (push) Waiting to run
Github Pages / Github Pages (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Tests (push) Waiting to run
- Fix Flower Gift / Forecast flyout - P3
- Fix Sinistcha/Poltchageist Crash in the Pokedex - P1
- Undid a dependency update, fixing Mobile fullscreen and the opponent status UI being misaligned
- Hopefully update locales properly this time
2025-04-01 02:55:04 -04:00
Sirz Benjie
6477be99f5
[Misc] Rollback phaser update (package-lock.json) (#5603)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Tests (push) Waiting to run
Update package-lock.json
2025-04-01 01:34:47 -05:00
damocleas
13b118454c Update package-lock.json 2025-04-01 01:27:42 -04:00
Sirz Benjie
a975192cf4
[Misc] Rollback Phaser Update 2025-04-01 04:54:48 +00:00
damocleas
6538eddf91
[Bug][Hotfix] Mark Sinistcha/Poltchageist forms as unselectable/unobtainable 2025-04-01 00:05:24 -04:00
damocleas
318b0c25d8
Merge branch 'beta' into sinis 2025-04-01 00:03:10 -04:00
damocleas
fd40bb50e9 Update beta to 1.8.1 2025-03-31 22:54:15 -04:00
Dean
95194ce8f1 Mark Sinistcha/Poltchageist forms as unselectable/unobtainable 2025-03-31 18:20:49 -07:00
damocleas
f417c0915e [i18n] Locales Fix 2025-03-31 21:10:19 -04:00
Dean
136ea70a6e
[Bug][Hotfix] Fix Flower Gift/Forecast flyout (#5599)
Fix Flower Gift flyout
2025-03-31 20:01:30 -05:00
damocleas
4afac11814
1.8 quick Main to Beta 2025-03-31 20:20:21 -04:00
Madmadness65
3d9aea7d71 Update version number 2025-03-31 19:00:47 -05:00
damocleas
5685220dda
Release 1.8.0
just an ordinary update
2025-03-31 19:47:12 -04:00
Unicorn_Power
16bce25333
Pika-e (#5597)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Tests (push) Waiting to run
2025-04-01 00:39:54 +02:00
NightKev
efa3662099
[Misc] AFD Event (#5596)
* global timed event manager

* more

* Music change

* Add AFD track loop points

* Add AFD music tracks

* changed music for afd

* Enable Seasonal Splash Text, adjust event values

* Add daily run challenge support

* update event date, change trainer shiny chance to 20%

* add banners lol

* fix activeeventhasbanner function

* Fix banner

* Update locales submodule

---------

Co-authored-by: AJ Fontaine <fontbane@gmail.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com>
Co-authored-by: Dean <me@deann.dev>
Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com>
2025-03-31 15:11:01 -07:00
damocleas
6add614e1c
[Balance] Trash to Treasure and The Strong Stuff minor adjustments (#5593)
* Update trash-to-treasure-encounter.ts

* Update the-strong-stuff-encounter.ts

* add 'set' items to garbodor

* Update relevant tests

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-03-31 12:34:16 -04:00
damocleas
7e4151f1ef
[Balance] Even more Split Passive fixes (#5591)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Tests (push) Waiting to run
* Initial Split Passives

* Update split passives final v1

* Lock Battle Bond Froakie/Frogadier Ability, Gallade back to Inner Focus

* fix mispell

* remove unneeded ability on froakie and frogadier after testing

* fix some form passives

* Update passives.ts

* Update passives.ts

* Correct BB Froakie, G-Max changes for Flapple, Appletun, Toxtricity, Hatterene, Grimmsnarl, Alcremie

* Update egg-moves.ts

* Seviper now matches Zangoose's egg tier wow

* fix mispell

* Update passives.ts

* Update passives.ts
2025-03-31 01:19:58 -04:00
NightKev
51f765d67a
[Move] Add message for called moves failing due to no targets (#5590) 2025-03-31 00:00:59 -04:00
Lugiad
111390631d
[Localization] LATAM Spanish inclusion (#5582)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Tests (push) Waiting to run
* Update i18n.ts

* Update settings.ts

* Update settings-display-ui-handler.ts

* Update starter-select-ui-handler.ts

* Update utils.ts

* Add files via upload

* Update i18n.ts

* Add files via upload

* Update loading-scene.ts

---------

Co-authored-by: Dean <69436131+emdeann@users.noreply.github.com>
2025-03-30 19:29:28 +00:00
damocleas
28234e577e
[Balance] Beta Passive Fixes, 1.8 Egg Move Changes, Egg Tier Change, and G-Max Form Re-Evaluation finished (#5588)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Tests (push) Waiting to run
* Update passives.ts

* Correct BB Froakie, G-Max changes for Flapple, Appletun, Toxtricity, Hatterene, Grimmsnarl, Alcremie

* Update egg-moves.ts

* Seviper now matches Zangoose's egg tier wow
2025-03-30 06:21:12 +00:00
AJ Fontaine
d2ffc12d65
[Refactor] Remove game mode param from applyChallenges (#5585) 2025-03-30 06:18:18 +00:00
Wlowscha
05691970e2
[Bug] Fix pokedex option after catching (#5574)
* Fix pokedex entry after catching

* Allow turning pages

* Using isSeen in more places

* Evolutions show up as seen after catching

* Apply suggestions from code review

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

* Showing battle forms correctly for seen mons

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-03-30 06:14:19 +00:00
Dean
b33d95d27d
[Bug][Refactor] Fix Unsuppressable Abilities being Unreplaceable (#5547)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Tests (push) Waiting to run
* Switch unsuppressable to unswappable

* Update test

* Change suppress/replace/copy flags

* Make flower gift unreplaceable

* Make forecast unreplaceable

* No holding hands

* [Sprite] Reduce Mystical Rock sprite's size (#5570)

* Updating the size to be smaller

* Update item atlas

* Fix Malicious Armor missing outline

Noticed when exporting atlas that the item sprite broke

---------

Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com>
Co-authored-by: damocleas <damocleas25@gmail.com>

* Switch unsuppressable to unswappable

* Update test

* Change suppress/replace/copy flags

* Make flower gift unreplaceable

* Make forecast unreplaceable

* No holding hands

* Apply suggestions from code review

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

* Remove trivial type annotations

---------

Co-authored-by: Unicorn_Power <189861924+Unicornpowerstar@users.noreply.github.com>
Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-03-30 05:37:35 +00:00
Sirz Benjie
66bc83fce4
[Ability] Flower Veil implementation (#5327)
* [WIP] flower veil implementation

Signed-off-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>

* Remove promises

Signed-off-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>

* Fully implement Flower Veil

Signed-off-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>

* Fix ally interaction for battler tag

* Condense and cleanup test files

* Remove a console.log message

* Remove stray excess import

* Update doc comments and apply kev's suggestions from code review

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

* Remove duplicated test

---------

Signed-off-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-03-29 21:32:35 -07:00
damocleas
ba1fa85045 [i18n] Update locales submodule 2025-03-29 23:53:11 -04:00
Sirz Benjie
451b1f6b08
[Misc] Update packages (#5462)
* Update via `npm audit fix --force`

* Update i18next family

* Update typescript family

* Update vite-tsconfig-paths

* Update jsdom to 26.0

Important! Security fixes, and performance/stability improvements.

* Update @stylistic/eslint-plugin-js to 4.1.0

* Update inquirer to 12.4.2

* Remove commented code and defunct import

* Run npm-audit fix

* Fix ts errors

* Update eslint family

* Update phaser family

* Update eslint plugin

* Update rest of imports
2025-03-29 22:13:50 -05:00
Blitzy
9c13fa5f80
[Balance] Evil Team Tweaks (#5579)
* Update evil-admin-trainer-pools.ts

* Update trainer-config.ts

* Fix Pokemon names

* Update / Fix Teams

* typo

* Rotom Revival Protocol (and Ponyta)

Accidentally removed Rotom from two different places

* unevolve the buddies

* Update evil-admin-trainer-pools.ts

---------

Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com>
2025-03-30 03:02:27 +00:00
Unicorn_Power
2ad030ec16
[Sprite] Animation updated for gen 7 batch 1 (#5558)
* 749-750 animation updated.

* Fix the animation json error plus missing files.

back shiny had placement issues and needed to be redone and i forgot to include the static updates.

* Remove the code that got merged by accident again

* Wishiwashi and schooling animations 746

* 728-729-730 Animation implementation

also Variant compatibility

* Final touch ups for 728-729-730

* Yes...... another undo redo

* 2037-2038 Alolan vulpix line animations

plus the Primarina back exp I show how missed

* 2074-2075-2076- animations

plus fixing the back shiny vulpix sprite not working correctly

* 2088-2089 animation and variant support.

* Fixing the base shiny 730

* 780 animation update
2025-03-30 01:57:15 +00:00
schmidtc1
27a1638243
[Bug] Fix interactions for Pollen Puff Parental Bond, Multi-Lens, Grip Claw Ally Healing (#5550)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Tests (push) Waiting to run
* Checks for hit result status on Grip Claw application

* Adds a boolean check for the Pollen Puff edge case in canBeMultiStrikeEnhanced

* Adds parental bond test

* Adds grip claw and multi lens tests
2025-03-29 18:25:34 +00:00
damocleas
4f19e4a126
[Move] False Swipe/Hold Back don't fail if the target has 1 HP (#5577)
* Remove condition from `SurviveDamageAttr`

* Add test for False Swipe

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: EmberCM <kooly213@hotmail.com>
2025-03-29 17:10:07 +00:00
NightKev
25b9fa7933
[Biome] Add "no unused imports" rule (#5580)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Tests (push) Waiting to run
* Apply Biome to files

* Add `lint/correctness/noUnusedImports` rule

* Apply rule

* Remove obsolete eslint directives

* Fix variable naming in `game-speed.ts`
2025-03-29 10:24:23 +00:00
Dean
a727375730
[Bug] Fix Flash Fire has No Message (#5578)
Add flash fire message
2025-03-29 09:51:28 +01:00
Sirz Benjie
5f01caffae
[Refactor] Minor refactor of trainer-config files (#5573)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Tests (push) Waiting to run
* Move trainer-config.ts

* move TeraAIMode enum to its own file

* Move TrainerPoolTier enum to its own file

* Move TrainerSlot enum to its own file

* Reorder and group imports

* Move TrainerPartyTemplate to its own file

* Remove speciesPoolPerEvilTeamAdmin method

* Apply kev's suggestions from code review

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

* Fix typo in zinzolin's name

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-03-29 00:19:35 -04:00
Sirz Benjie
fac20ca97a
[Ability] Fully implement Flower Gift and Victory Star (#5222)
* Fully implement Flower Gift and Victory Star

* Fully implement Flower Gift and Victory Star

* Update src/field/pokemon.ts

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

* Update src/field/pokemon.ts

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

* Update src/data/ability.ts

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

* Update src/data/ability.ts

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

* Accept suggested change

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

* Accept suggested change

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

* Update src/data/ability.ts

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

* Update src/data/ability.ts

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

* Update src/data/ability.ts

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

* Update src/field/pokemon.ts

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

* Fix check for ignore_abilities move flag

* Fix missing argument to getBaseDamage in getAttackDamage

* Fix merge conflict due to same changed import line

* Fix call to getAttackDamage that was reset after merge

* Update calls to getEffectiveStat

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-03-28 22:24:19 -05:00
Unicorn_Power
4a560d7185
[Sprite] Reduce Mystical Rock sprite's size (#5570)
* Updating the size to be smaller

* Update item atlas

* Fix Malicious Armor missing outline

Noticed when exporting atlas that the item sprite broke

---------

Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-03-28 19:02:47 -04:00
Sirz Benjie
4149d3600a
[Misc] Remove pre-push lefthook (#5572)
Remove pre-push lefthook
2025-03-28 14:49:54 -07:00
Sirz Benjie
35e733e87a
[Test] [Refactor] [GitHub] Enable no isolate for vitest (#5566)
* Reuse global scene between tests

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

* Add missing each method to mockContainer

* Fix select-modifier-phase test

* Sanitize overrides before tests

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

* Sanitize overrides before tests

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

* [WIP] fix things

* Fix tests not working with --no-isolate

* Update npm tests to use no isolate

* Update test-shard-template

* Update package.json

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

---------

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-03-28 17:30:38 -04:00
Dean
b838d5f775
[Misc] Allow Localization of Common Trainer Names (#5569)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Localize common trainer names

* Update locale key usage
2025-03-28 21:23:57 +00:00
Dean
f09c77c81b
[Bug] Fix Extra Ability Activation Flyouts during AI Decisions (#5563)
Fix extra messages in getMoveChance
2025-03-28 18:38:20 +00:00
Wlowscha
188647d2e5
[Bug][UI/UX] Pokédex filters properly track TMs for evolutions (#5568)
Looking at speciesId for TMs
2025-03-28 16:02:42 +00:00
Wlowscha
46d110e705
[UI/UX] Grey options in Pokédex for uncaught mons (#5529)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Options in Pokédex page are dark if unselectable

* Fixed docstring

* Changing display of seen Pokémon in the dex

* Changed visibility of icons in main Pokédex page
2025-03-28 03:59:05 +00:00
damocleas
0ea8edcf75 [i18n] Update locales submodule 2025-03-27 22:58:53 -04:00
damocleas
19c61a041f
[Misc] New Splash Texts, March 2025 (#5345)
* Update splash-messages.ts 1

* Add Pokemon name splash text

This will display a random Pokemon's name, followed by an exclamation point (ex. "Bulbasaur!").

* Make Pokemon name splash message weighted

* Update splash-messages.ts

* Update splash-messages.ts

* fix trailing spaces

* Update splash-messages.ts

* Update splash-messages.ts

* Add splashes which use random Pokemon

* Update splash message tests

* Update splash-messages.ts

* Update splash-messages.ts

* Missing comma

* Fix length on test

It even says to do so whenever weight multipliers are adjusted...

* Update splash-messages.ts

* add missing prefix thing

* adjusted comment in splash_messages.test.ts

* Update splash-messages.ts

* fix blank line

* Add gender splash message code

This makes the specific April Fools splash message functional.
Also fixed a linter issue with the randomPokemon code.

* Update title-ui-handler.ts changed battles won fallback number to -1

* Update splash-messages.ts

* changed afd to 2 days

* Update splash_messages.test.ts

* Update src/data/splash-messages.ts

Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com>

---------

Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com>
Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com>
Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com>
2025-03-27 19:56:26 -07:00
Dean
eb12b8c692
[Bug] Stop Shield Dust and Gluttony from Displaying (#5564)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Prevent displays
2025-03-27 15:01:33 -04:00
Amani H.
d955051730
[Bug] Mystical Rock Crashing on Selection (#5562)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-03-27 00:05:38 -04:00
Wlowscha
5fdc133955
[UI/UX] Pokédex filters correctly show split passives (#5560)
* Pokédex filters properly take split passives into account

* Removed unused dependency
2025-03-27 03:26:03 +00:00
Amani H.
6316218bd3
[Item] Add Weather and Terrain Extender Item (#4799)
* [Item] Add Weather and Terrain Extender Item

* Add Documentation

* Clean Up Unit Tests

* Add Weight Function

* Include Suggestions
2025-03-26 22:40:46 -04:00
NightKev
db850c79cd
[Refactor] Moveset arrays can no longer hold null values (#4919)
* Pokemon movesets no longer allow `null` values

* Clean up all the bangs caused by movesets allowing `null`

* Pokemon movesets no longer allow `null` values

* Clean up all the bangs caused by movesets allowing `null`

* Fix merge issues

* Remove various unnecessary `?`

* Apply biome

* Fix `global-trade-system-encounter.ts`

* Fix merge issue

* Remove unnecessary parentheses

* Remove missed `?`

* Match formatting of `pokemon.ts`
2025-03-26 19:12:54 -07:00
Unicorn_Power
0b1f324f97
[Sprite] [Item] Weather/Terrain Extender Item Sprite (#5542)
* Terrain/weather-extender item

* Fixing indexing for the sprite atlas

* Re-export item atlas, fix extender item's name

Spaces in names use underscores instead of hyphens

---------

Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com>
2025-03-26 21:47:16 -04:00
damocleas
938f1b8756
[Balance] G-Max Form Re-Evaluation (#5545)
* Update pokemon-species.ts

* Orbeetle and Drednaw adjustment

* Cinderace, Corviknight, Drednaw, and Coalossal adjustments

* Fix Urshifus

* Butterfree, Orbettle, and Drednaw adjustments
2025-03-26 17:57:30 -05:00
damocleas
f911ffc266
[Balance] Split Passives and related (#5531)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Initial Split Passives

* Lock Battle Bond Froakie/Frogadier Ability, Gallade back to Inner Focus
2025-03-26 16:01:54 -04:00
damocleas
ead1bc6cce
[UI/UX] Autofill login text color changed to gray (#5523)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Update index.css
2025-03-25 18:06:28 -07:00
Wlowscha
bba7c1610d
[UI/UX] Option to see Pokedex entry after catching wild Pokémon (#5538)
* pokedex option after catching

* Also changing catching for mystery encounters
2025-03-25 13:36:12 -07:00
Lugiad
f78015d757
[Localization] Catalan reactivation (#5555)
* Add files via upload

* Update settings.ts

* Add files via upload

* Add files via upload

* Update starter-select-ui-handler.ts

* Update utils.ts with Catalan

* Update loading-scene.ts
2025-03-25 13:06:24 -07:00
damocleas
443264a3ea [i18n] Update locales submodule
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-03-25 01:55:26 -04:00
Madmadness65
f3141280c9
[Balance] Implement more trainer types & add to biomes (#5520)
* Add more trainer types to biomes

This makes the Hooligans, Musician, Pilot, Poké Fan, Rich, and Rich Kid trainer types able to be battled.

* Adjusted Rich and Rich Kid $$$ multipliers

* Add basic dialogue for trainer types

Also added the Clerk's dialogue entries, as that trainer type has localized text, but no entry in the code.

* Fix Musician to Pokefan encounter music

* Add dialogue entries for new dialogue

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
2025-03-25 01:51:59 -04:00
Wlowscha
7f72794d23
[UI/UX] Cancel button on Pokédex page to previously selected Pokémon (#5528)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Removed redundant form index argument in show() of pokedex page

* Storing previous pokémon for cancel button
2025-03-23 22:03:11 -07:00
Wlowscha
37e51e9657
[Bug][Challenge][UI/UX] Exclude invalid starters when combining challenges (#5509)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Filtering correctly when combining gen and monotype challenges

* Clean-up

* Apply suggestions from code review

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

* Always check requested form first

* Fixing Basculin

* Only check forms which are starter selectable

* Exclude form changes that are not triggered by an item

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-03-24 02:40:17 +00:00
Dean
dbc8ac26af
[Bug] Fix #5422 Neut. Gas and Primal Weather Persist After Flee (#5496)
* Add applyPreLeaveFieldAbAttrs call to AttemptRunPhase

* Update tests
2025-03-23 23:27:20 +00:00
schmidtc1
40e1e7fd4e
[Bug] Fix Reviver Seed and endure triggering on indirect damage (#5182)
* Create new turnData field for tracking damageResults, check for HitResult in Reviver Seed modifier

* Optional chaining for cases like stealth rock

* Adds HitResult.SELF for confusion to distinguish from indirect damage

* Adds HitResult.SELF to damage sound effect switch

* Cover edge case of salt cure, insert HitResult for ALL damage regardless of optional variable

* Change Liquid Ooze HitResult to OTHER from HEAL

* Adjust OHKO moves to not bypass endure or RSeed

* Add tests for reviver seed

* Fixes endure to no longer block indirect damage, updates weather damage to be HitResult.OTHER, adds/fixes unit test

* Change destiny bond to HitResult.OTHER so it doesn't trigger rseed

* Adds destiny bond unit test

* Creates additional unit tests for endure

* Rename SELF hitresult to CONFUSION

* Update CONFUSION enum

* Refactors implementation per Wlowscha's suggestions: removes damageSources array and preventEndure variable

* Rename HitResult.OTHER to INDIRECT, create INDIRECT_KO for PSong/DBond, add functionality for INDIRECT_KO to damageanim/number handler

* Fixes hit result for stealth rock

* Removes unnecessary check, makes DamageResult default to EFFECTIVE, updates remaining damageAndUpdate calls to use INDIRECT

* Refactors damageAndUpdate to replace optional parameters with object parameter

* Fixes based on Kev's suggestions

* Updates tsdocs for damageAndUpdate

* Fix merge conflict

---------

Co-authored-by: Wlowscha <54003515+Wlowscha@users.noreply.github.com>
2025-03-23 22:59:19 +00:00
Dean
817095d895
[Bug] Fix #2769 Revival Blessing Softlock in doubles (#5141)
* Properly handle cases where enemy switches in due to revival

* Fix user ally using move when revived

* Move revival blessing function to move.ts

* Properly filter for the right switch phase to remove

* Re-add bug fix

* Add test
2025-03-23 20:47:51 +00:00
José Serrado Marques
1e876ec595
[BUG] fixes #5472 - transform on reload (#5508)
* [BUG] fixes #5472 - transform on reload

* Fix the bug where transformed pokemon failed to load sprite on reload if it was not the base form

* Now properly loads the transformed sprite assets during summon phase
2025-03-23 12:07:14 -07:00
NightKev
4b8f1df8cd
[Bug] Add list of uncallable moves for Mirror Move (#5552)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Add list of uncallable moves for Mirror Move

* Mirror Move now respects the uncallable moves list

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
2025-03-22 14:46:58 -07:00
damocleas
d0a9672e91
[Balance] [Move] Add Fleur Cannon as a Metronome callableove (#5551)
* Update invalid-moves.ts

* forgot fleur cannon
2025-03-22 13:18:08 -07:00
damocleas
87b78e6b70
[Balance] [Move] Made more moves callable with Metronome, Assist, Sleep Talk, and Copycat (#5549)
Update invalid-moves.ts
2025-03-22 15:47:41 -04:00
AJ Fontaine
c792d5e704
[Balance] Changes to several trainer classes (#5505)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
Biome Code Quality / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
* Changes to Biker, Baker, Beauty, Cyclist, Parasol Lady, Hex Maniac

* Linting and extra beauty mons

* Further changes

* Find to some

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
2025-03-20 19:53:27 +00:00
Dean
66965bf7e2
[Bug] Fix Slow Start Message being Deferred (#5534)
Fix deferred message
2025-03-20 19:37:16 +00:00
Dean
17e71a1b8a
[Bug] Fix Poison Heal Crash on beta (#5544)
Fix !== null uses
2025-03-20 19:26:49 +00:00
Unicorn_Power
b3c7300c37
[Sprite] Fixing the naming issue in exp-sprite.json +Disabling few problematic exp's (#5526)
* fixing the naming in exp-sprite.json

* Did the same thing to 931

* Undo for 3 pokemons due to exp animation quality.

* Corrected the Indicator for the exp being disabled

* Charcadet line exp disable
2025-03-20 19:15:12 +00:00
Dean
585f040057
[Test] Fix Chilly Reception Test Ability Overrides (#5543)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Fix ability overrides

* Remove extraneous resets
2025-03-19 23:25:14 +00:00
Matheus Rabello Noya Alves
3f887988a6
[Bug] [UI/UX] Smack Down and Thousand Arrows now display a message for Grounding (#5536)
Fix #5027: Missing confirmation message for moves special effects
When using the moves Thousand Arrows and Smack Down, though the special
effect of grounding the opponent is applied, a confirming message was
not displayed. In this fix a new AddBattlerTagAttr subclass has been
created to handle the message display, compared to previous multiple
attribute additions. This new subclass verifies the conditions for the
message to be displayed through asserting if target is grounded and
accesses a new locale message created to display if necessary.
2025-03-19 22:45:41 +00:00
Matilde Simões
a1a6b0dd5a
[Bug] Nicknames not properly sanitized (#5537)
* Fix #5082: Nicknames not properly sanitized
When a player changes the name of the pokemon
to one that uses one of the following combination
of letters: "@c{}", "@s{}", "@d{}", "@f{}" and "$"
the game shows the name of the pokemon incorrectly in a battle.
Changes made:
- on message-ui-handler.ts file I updated the "showTextInternal"
function to get the original name of the pokemon
or pokemons (in case it's a double battle) saving it in a list
named "pokename" and change it in the text for their
correspondent placeholder which is saved in the list "repname"
(e.g "#POKEMON1" for the first pokemon and "#POKEMON2" for the
second pokemon). After the text is properly modified because
of the special characters ("@c{}", "@s{}", "@d{}", "@f{}")
the name of the pokemons is replaced to it's original value.
- on message-phase.ts file I updated the "start" function to use a
similar approach but only change the pokemon name to it's original
form after the "pageIndex" (which checks the index of the "$")
is updated, so the text is cut properly.
- on ui.ts file I updated the "showtext" function to use same
approach of the previous files, ensuring that the pokemon names
were only replaced back to their original values after all text
processing on "$" was completed.

* Replace `let` with `const`

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-03-19 22:01:33 +00:00
NightKev
b2848af899
[Test] Add ability overrides to Tailwind tests (#5541)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-03-18 23:00:46 -05:00
Wlowscha
b1d494eadb
[UI/UX] [Bug] Icons for egg moves and passives show up even when not unlocked (#5540)
Reworked icons to more compact code
2025-03-19 03:22:52 +00:00
NightKev
3b99d3aea2
[Misc] Add * -crlf to .gitattributes (#5539) 2025-03-18 21:52:49 -04:00
Dean
d9288a7908
[Bug] Add Neutralizing Gas Message for each user (#5527)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Add message to onOverlap

Co-authored-by: damocleas <damocleas25@gmail.com>
2025-03-18 21:19:37 +01:00
Wlowscha
a5ed9c5191
[UI/UX] Mark Revavroom forms as unobtainable (#5525)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
Biome Code Quality / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
2025-03-16 21:51:27 -04:00
Dean
02ae7952ad
[Bug] Fix Commander crash after 5267 (#5524)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Fix reversed commander checks
2025-03-16 12:44:48 +01:00
Dean
1d7f916240
[Refactor] Align ability display with mainline (#5267)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Stop ShowAbilityPhase from ending until the bar has popped out

* Remove ability bar hiding from messagePhase

* Remove abilityBar reference from base Phase class

* Add HideAbilityPhase to hide ability bar after effects

* Add willSucceed to ability attrs

* Update AbAttrs and PostInitAbAttrs

* Update PreDefendAbAttrs

* Update postDefend, postMoveUsed, StatStage, postSetStatus, and PostDamage

* Update preAttack and fieldStat

* Partially implement postAttack

* Finish PostAttack

* Update PostSummon

* Update PreSwitchOut

* Update preStatStageChange

* Update PostStatStageChange, PreSetStatus, PreApplyBattlerTag

* Update postTurn and preWeatherEffect

* Update postWeatherChange

* Update postWeatherChange

* Update PostTerrainChange

* Update CheckTrapped and PostBattle

* Update postFaint

* Update PostItemLost

* Bug fixes from test cases

* Fix intimidate display

* Stop trace from displaying itself

* Rename to canApply

* Fix ability displays using getTriggerMessage

* Ensure abilities which are mistakenly shown are still hidden

* Fix ability bar showing the wrong ability with imposter

* Add canApply for imposter

* Update abilities using promises and `trySet...` functions

* Committing overrides changes is bad

* Document apply and canApply

* Update PreLeaveFieldAbAttr

* Remove boolean return type apply functions

* Remove redundant  assignment

* Remove ability display from abilities that shouldn't have it

* Move queueAbilityDisplay to battlescene

* Remove unused shown variable

* Minor changes

* Fix using id instead of battlerindex in queueAbilityDisplay

* Fix PostBattleInitFormChangeAbAttr displaying

* Prevent crashes in case an ability for a pokemon not on the field is shown

* Stop more abilities from displaying

* Move enemy ability bar to the right side

* Automatically reload bar if shown while already out, fix specific abilities

* Remove duplicate call to clearPhaseQueueSplice

* Remove ShowAbilityPhase import from ability.ts

* Update PostDefendTypeChangeAbAttr to use PokemonType

* Update PostSummonAddArenaTagAbAttr

* Minor changes
2025-03-16 02:51:02 +00:00
AJ Fontaine
7aa5649aa8
[Refactor] Move signature species to separate file (#5519)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
Biome Code Quality / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
2025-03-14 17:06:19 -04:00
NightKev
e8e0041ed0
[Misc] OPP_FORM_OVERRIDES now accepts 0 as a valid form index (#5514)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-03-13 21:48:53 +00:00
NightKev
4e1ee9e50b
Revert "[Enhancement] Add form changes for Solgaleo, Lunala, & Marshadow cosmetic forms" (#5512) 2025-03-13 22:32:35 +01:00
Scooom
dc46cf6d05
[BUG] Add Multi Attack, Revelation Dance, and Terrain Pulse to Normalize Exceptions (#5503)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
Biome Code Quality / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
2025-03-12 07:03:12 +00:00
Scooom
85c39754c4
[Bug] [Balance] Fix Locked Reroll not using Luck Score (#5502) 2025-03-12 06:34:34 +00:00
Madmadness65
f3f43f4a44
[Enhancement] Add form changes for Solgaleo, Lunala, & Marshadow cosmetic forms (#5344)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-03-12 01:00:33 -04:00
Dean
b298138157
[Bug] Fix NG crash when ability is reactivated for a Pokemon off the field (#5478)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-03-11 03:20:00 +00:00
Dean
929392fe8b
[Bug] Fix #5358 Abilities that Redirect Moves Consider Move-Typings before Ability Modifiers (#5464) 2025-03-11 03:02:51 +00:00
MascaChapas27
572556b7b9
[UI/UX] Changed wrong colors in german type icons (#5494)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Biome Code Quality / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Co-authored-by: Ángel <odiopds@yahoo.az>
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-03-10 12:59:19 +01:00
Sirz Benjie
7f226df8d6
[GitHub] Automatically add issue-type in issue templates (#5499) 2025-03-09 22:15:24 +00:00
Sirz Benjie
408b66f913
[Misc][Refactor][GitHub] Ditch eslint for biome, and add a formatter (#5495)
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-03-09 14:13:25 -07:00
Sirz Benjie
7455360824
[Misc] Add Wlowscha and SirzBenjie to credits (#5498)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
2025-03-08 22:31:36 -05:00
NightKev
c977bc86c1
[Misc] Add some pre-defined imports to overrides.ts (#5492)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
2025-03-07 17:20:08 -08:00
Sirz Benjie
60a4db7059
[Refactor] Refactor moves.ts part 1 (#5420) 2025-03-07 19:10:29 -06:00
Mikhail Shueb
e73dbe9861
[Bug] Chilly Reception no longer replaces Legendary Weather (Primordial Sea, Desolate Land, Delta Stream) (#5484)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-03-07 12:31:34 -05:00
Fuad Ali
da68cf15c6
[Bug] Harsh Sun, Heavy Rain, and Delta Stream messages now display when their effects are triggered (#5489)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-03-06 19:03:01 -05:00
damocleas
fdc5e7daea [i18n] Update locales submodule 2025-03-06 14:05:08 -05:00
schmidtc1
7a9b1e5033
[Bug] Fix critical hits not bypassing screens (#5470)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-03-06 09:14:22 +00:00
Sirz Benjie
ba617ad91b
[Misc] Add a script to help verify correctness of variant sprite masterlist (#5325)
Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com>
2025-03-06 00:39:02 -05:00
NightKev
6595966478
[Misc] getPokemonSpecies() no longer accepts undefined (#5477) 2025-03-06 02:18:24 +00:00
Unicorn_Power
9544973f1f
[Sprite] Gmax animation implementation + Palkia-Origin fix (#5468)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-03-05 14:05:59 -08:00
NightKev
f185039474
Merge pull request #5485 from pagefaultgames/main
Main (1.7.7) -> Beta
2025-03-05 14:04:06 -08:00
Xavion3
632caff2f3
[Bug][Hotfix] Fix migration crash (#5482)
Some checks failed
Deploy Main / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Github Pages / Github Pages (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
2025-03-05 13:58:51 -08:00
Lugiad
c890b7ae46
[Localization] [UI/UX] Added Spanish status icons (#5481) 2025-03-05 21:44:29 +01:00
damocleas
1882e96ec5
Minor Release 1.7.6
Some checks failed
Deploy Main / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Github Pages / Github Pages (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
2025-03-03 23:49:28 -05:00
David Yang
6181afc6d2
[UI/UX] Make left button also go back to run history from run info (#5474)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
2025-03-04 00:40:04 +00:00
damocleas
ff4184e23f
[Balance] Make Pickup and Honey Gather Unsuppressable (#5476) 2025-03-03 16:33:53 -08:00
Xavion3
cabcfcbd39
[Balance] Make megas/max player pokemon unable to tera (#5469)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-03-02 21:22:37 -05:00
Sirz Benjie
5e469620ef
[Bug] Fix battle-anims crashing in certain cases (#5337) 2025-03-02 17:15:51 -08:00
Wlowscha
6f686a05e3
[UI/UX] [Bug] Hiding tera button when toggling on stats mode (#5466)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-03-02 14:35:59 -05:00
Sirz Benjie
73afb35c4d
[GitHub] Update CODEOWNERS to fix team ownership (#5465) 2025-03-02 10:40:40 -08:00
damocleas
659bc82676 [i18n] Up version to 1.7.6, Update locales submodule 2025-03-02 12:19:17 -05:00
Wlowscha
882b965da1
[Bug] Pledge moves in summary do not break the game (#5461)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-03-01 19:46:38 -06:00
Wlowscha
b50d2c0783
[Bug][UI/UX] Fix bug in Pokédex for Mothim and other niche cases (#5458)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-03-01 16:24:15 -05:00
Wlowscha
8f280bec49
[Bug][UI/UX] Restore V button in battle (#5459) 2025-03-01 21:11:05 +00:00
Wlowscha
04ac5c3762
[Bug][UI/UX] Shiny button can cycle variants even if non-shiny form is uncaught (#5457) 2025-03-01 15:54:29 -05:00
Wlowscha
5c73a1ea46
[Bug][UI/UX] Starter select screen now looks for and displays form-specific abilities (#5454) 2025-03-01 15:43:18 -05:00
Wlowscha
c7df847e66
[Bug] Unlocking correct base form of Zygarde when captured (#5453) 2025-03-01 13:33:31 -06:00
Wlowscha
89e8085c39
[Bug] Display Pokémon name in Focus Punch lost focus message (#5448)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-02-28 23:22:51 -05:00
Wlowscha
d16197e950
[Bug] Gendered forms display correct information in Pokédex (#5452) 2025-02-28 22:34:49 -05:00
Wlowscha
b348626ec2
[Bug][UI/UX] Make candy icons show up again in starter select screen (#5451) 2025-03-01 01:00:56 +00:00
Wlowscha
7cc5f40af8
[Bug][UI/UX] Restore egg/tm move and passive icons when using filters in Pokédex (#5450) 2025-02-28 19:55:22 -05:00
Wlowscha
118bdcc49e
[Bug][UI/UX] Never select invisible containers in Pokédex (#5449) 2025-02-28 18:15:11 -06:00
damocleas
9b2f649078
Main -> Beta 1.7.5 #5438
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Merge main to beta
2025-02-28 18:02:25 -05:00
Wlowscha
942bcacb56
[Bug][Hotfix] Restrict Use Candies option in the Pokédex during Shop (#5446)
Some checks failed
Deploy Main / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Github Pages / Github Pages (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
2025-02-28 16:22:22 -05:00
AJ Fontaine
13429446d3
[Bug] Fix tera slot wrapping (#5437)
Some checks are pending
Deploy Main / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Github Pages / Github Pages (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-02-28 06:18:58 +00:00
Xavion3
b33ffb29b3
[Bug] Fix mycelium might softlock (#5441) 2025-02-27 19:08:55 -08:00
Wlowscha
5941cfb001
[Bug][Hotfix] Fix bug with transferring all items (#5440) 2025-02-28 02:49:27 +00:00
Blitzy
9701f27c63
[Bug] [Hotfix] Remove Penny's Extra Zamazenta (#5439)
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-02-28 02:05:11 +00:00
damocleas
49edc39bda
Release 1.7.0 #5429
Release 1.7.0
2025-02-27 19:11:20 -05:00
NightKev
2b535622ac [i18n] Update locales submodule
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-02-27 15:33:01 -08:00
Xavion3
078c3d00ce
[UI][Enhancement] Implement keybind migrator (#5431)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com>
2025-02-27 22:22:09 +00:00
Xavion3
9ff20af8b7
[UI] Make fight cursor tera icon while tera-ing (#5402)
Co-authored-by: damocleas <damocleas25@gmail.com>
Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com>
2025-02-27 23:13:35 +01:00
Wlowscha
922a17048c
[Bug] Save data migrator to fix starters with no selectable forms (#5425)
Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com>
2025-02-27 21:50:46 +00:00
damocleas
3124aeb810
[Misc] Event Banner Fix (#5435) 2025-02-27 19:59:24 +00:00
damocleas
02edfb673e
Data for possible Pokémon Day 2025 Event (#5433) 2025-02-27 19:12:57 +00:00
Unicorn_Power
f902716837
[Sprite] Froakie static scuff (#5434) 2025-02-27 19:05:37 +00:00
Lugiad
32ae72150f
Pokémon Day 2025 Event banners (#5432) 2025-02-27 12:59:33 -06:00
damocleas
d12aa635af
[Balance] Follow Cost Change from #5416 (#5430)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-02-27 05:56:01 +00:00
AJ Fontaine
de148277ea
[Balance] [Bug] Set trainer mons to forms matching specialty type (#5409)
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-02-26 19:14:15 -05:00
Wlowscha
13373a6391
[UI/UX] Pokédex - New locales keys for standalone battle forms (#5386)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-02-26 16:57:05 -05:00
Dean
905fec92e9
[Bug] Fix Neutralizing Gas not Deactivating on Faint and Capture (#5423) 2025-02-26 22:39:08 +01:00
Xavion3
035aed3e85
[Bug][UI] Fix arena flyout (#5421) 2025-02-26 19:16:07 +00:00
AJ Fontaine
85f8c59036
[Balance] Paldean Gym Leader, E4, and other Tera-related trainer adjustments #5367 2025-02-26 14:11:46 -05:00
Xavion3
71f644c453
[UI] Tera type on summary screen (#5419) 2025-02-26 17:03:22 +00:00
Esca
883bf45bc0
[Bug][Move] Shed Tail now rounds incurred damage up, not down (#5219)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Shed Tail rounds incurred damage up

* Altered Substitute/Shed Tail success condition to account for rounding up

* Altered the test to match correct functionality

* Update src/data/move.ts

Removed default value in constructor due to it having become redundant

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

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
2025-02-26 00:45:29 -08:00
Wlowscha
6e8a4b287c
[UI/UX] Pressing B on filter bar resets filters (#5404)
* Make dropdown update selection when reset to default

* Function to resect selection in filter bar

* Pressing B on filter now closes it or resets instead of going to top of starters

* Filter changes to starter select screen

* Method to get column at a given index in filter bar

* Specific reset behavior for caught filter in starter select menu

* Apply suggestions from code review

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

* Update src/ui/starter-select-ui-handler.ts

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

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com>
2025-02-26 01:05:39 -05:00
Dean
b9a853ed2e
[Bug] Fix canApplyAbility check but for real this time (#5418)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Move canApplyAbility check

* Fix suppressed abilities not activated properly

* Move canApplyAbility to applySingleAbAttrs

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
2025-02-26 00:48:44 -05:00
damocleas
92ee9d06ca
[Balance] February 2025 Passive/Egg Move/Cost Changes 2 #5416
* Update egg-moves.ts

* Update starters.ts cost changes

* Update passives.ts

* Update mystery-encounter-utils.test.ts
2025-02-25 23:02:04 -05:00
Xavion3
ca5e578954
[Bug] Fix AI func save/loads. #5414
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-02-25 22:27:20 -05:00
Sirz Benjie
aa3f924633
Revert "[Bug] Fix canApplyAbility check #5413" (#5417)
This reverts commit 2cc0ac90f8.
2025-02-25 22:05:18 -05:00
Dean
2cc0ac90f8
[Bug] Fix canApplyAbility check #5413 2025-02-25 20:22:32 -05:00
Dean
870bff0e6e
[Bug][Ability] Fix Neutralizing Gas interactions #5381
* Add neutralizing gas arena tag

* Add PostSummonAddArenaTagAbAttr

* Add PreLeaveField attr for neutralizing gas

* Remove old SuppressFieldAbilitiesAttr

* Fix ability suppression logic

* Add basic tests

* Reapply onGain abilities when neutralizing gas ends

* Untodo ability remval test

* Add more tests

* Modify gastro acid to call onLose attributes when suppressing

* Properly cancel abilities on switch in

* Add documentation

* Remove partial designation

* Update locale key usage

* Reactivate the last source's other abilities when it becomes the last remaining

* Fix loop vars

* Add access modifiers for SuppressAbilitiesTag

* Minor changes

* Move test to reflect new location

* Remove promises from abattr function signatures
2025-02-25 18:38:17 -05:00
Wlowscha
7a9bede38d
[UI/UX][Bug] Fixing obsolete reference in Pokédex to filteredPokemonContainers #5415
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-02-25 16:17:22 -05:00
Wlowscha
8cc5f650f3
[UI/UX] Reducing number of containers in the Pokédex (#5400)
* PokedexMonContainer now has a method to change species.

* Not setting tint to 0 in the container

* Using only 81 containers in Pokédex

* Apply suggestions from code review

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

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-02-25 08:54:48 -06:00
Unicorn_Power
d11f02aa3d
[Sprite] Variant json and deletion of the pngs for Vivillon-666 (#5408)
* Variant json and deletion of the pngs

* Variant color adjustment

adjusted some color that werent mapped correctly.
adjusted some colors due to contrast issues

* Fixing  the reason sprite test kept failing.

.....669
2025-02-25 06:54:24 -08:00
Sirz Benjie
c81d9b6a89
[Balance] Update moveset gen to calculate expected power (#5390)
* Make moveset gen consider multi hit moves fairly

* Make getTargetBenefitScore consider effective power

* Apply Kev's suggestions

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

* Fix improper stat ratio.

* Fix expected hit count for pop-bomb like moves

Accuracy is now properly divided by 100

* Update src/data/move.ts

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

* Update src/data/move.ts

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

* Update src/data/move.ts

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

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-02-25 08:22:25 -06:00
Madmadness65
88a5c9d416
[Ability] Implement Teraform Zero ability (#5359)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Partially implement Teraform Zero ability

The functionality of the ability is all there, it just isn't limited to one use per Terastallization yet.

* Add the once per battle condition

This removes the partial from the ability.

* Make attribute names more generic

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
2025-02-25 08:46:07 +01:00
AJ Fontaine
d14f71d27a
[Bug] Maintain Gimmighoul evo counter when fusing (#5411)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-02-24 21:15:15 -08:00
Wlowscha
b95bedce7a
[UI/UX] Pokedex - Ensure gender forms loop correctly with either button (#5387) 2025-02-24 20:45:45 -08:00
Wlowscha
4128d09a1d
[UI/UX] Pokedex - Page turning takes filters into account (#5372)
* Introducing list of indices of filtered mons to be passed to the Pokédex Page for scrolling

* Update pokedex-page-ui-handler.ts
2025-02-24 20:44:13 -08:00
Wlowscha
6857cd459c
[UI/UX] Pokédex - Fix candy filter (#5377)
* Hardcoding Pikachu to show 0 candies

* Looking at starterId to determine order in sort by candy
2025-02-24 20:43:53 -08:00
Wlowscha
cc7e1af827
[BUG] Base forms are now counted as caught when catching a battle form (#5385)
* Base forms are counted as caught when catching a battle form

* Ensuring that correct form shows up in Pokédex Index
2025-02-24 20:43:34 -08:00
Xavion3
0cb3a28dfa
Fix tera type access (#5364)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-02-25 04:33:39 +11:00
Dean
5996f8c6eb
[Move] Add Taunt Removal Message #5407 2025-02-24 11:46:54 -05:00
Xavion3
9fb654ce73
[Balance] Make dual STABs way more likely #5401 2025-02-24 11:44:22 -05:00
Jimmybald1
8f15788b39
[Misc] Added a Daily Run Seed Override to the overrides. Only works locally. (#5330)
* [Misc] Added a Daily Run Seed Override to the overrides. Only works locally.

* [Misc] Changed Daily Run Seed Override to string | null

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

---------

Co-authored-by: Jimmybald1 <147992650+IBBCalc@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-02-24 11:43:38 -05:00
Unicorn_Power
1c192d434b
[Sprite] 666-Vivillion back exp change and scuff fix (#5382)
* [Sprite] Vivillion back exp change and scuff fix

scuff is the incorrect labeling in the exp-sprite.json.
fully updated meadow pattern.
all incorrect labeled back sprites are no more a thing.

* fix the last issues with Shiny exp backs

* Last adjustment for the future variant Pr

added 1 color
2025-02-24 10:44:41 -05:00
Dean
9d03004dd3
[Test] Fix import in create-test script (#5403)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-02-23 23:17:37 -08:00
NightKev
3ab75b297b
[Misc] Copy Encounter Phase logging to MEs (#5405) 2025-02-23 22:27:40 -08:00
AJ Fontaine
095634fe6d
[Bug] Fix Gym Leaders fought on wave 20 not evolving mons when fought later in the run (#5370)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Fix repeat Plains GLs not evolving first mons

* Add null check
2025-02-23 13:21:24 -06:00
NightKev
cefd92bee8
[Misc] Update Encounter Phase logging nature display and passive check (#5397)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-02-23 00:06:27 -06:00
Madmadness65
eeeb4171b1
[Move] Add flavor text for Splash and Celebrate (#5392)
* Add flavor text for Splash and Celebrate

* Remove unnecessary constructors

* Use Splash move text from move triggers
2025-02-23 00:35:49 -05:00
Sirz Benjie
a51a504155
[Test] Move test folder out of src (#5398)
* move test folder

* Update vitest files

* rename test/utils to test/testUtils

* Remove stray utils/gameManager

Got put back from a rebase
2025-02-22 22:52:07 -06:00
Wlowscha
bd288ad862
[UI] Adding container to set transparency of optionSelectText (#5396) 2025-02-22 15:38:11 -08:00
Sirz Benjie
b1b71dbd6d
[Test] Fix annoying BBCodeText error messages in tests (#5395) 2025-02-22 15:37:52 -08:00
Sirz Benjie
7a015e094f
[Bug] [Move] Add focus punch lost focus message (#5341)
* Add focus punch lost focus message

* Rename attribute

* Added automated test

* Fix failedToTerrain being undefined

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

Co-authored-by: Wlowscha <54003515+Wlowscha@users.noreply.github.com>

* Update src/data/move.ts

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

---------

Co-authored-by: Wlowscha <54003515+Wlowscha@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-02-22 13:33:32 -05:00
Wlowscha
180a9cc054
[UI/UX] Pokedex - Separate shiny icons (#5371)
* Separate shiny icons

* Added forgotten access modifier
2025-02-21 14:09:00 -06:00
damocleas
39f2fdf4ff
[Bug] Giratina no longer loses its' Hidden Ability going from Origin back to Altered Form #5326 2025-02-21 02:43:45 -06:00
Sirz Benjie
e4ce822ce6
[Refactor] Remove Promises from moves and abilities (#5283)
* Remove Promises from moves and abilities

* Fix `PostSummonPhase`

* Apply suggestions from Kev's review

* More suggestions

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

* Cleaning up some updated functions

* Remove Promise from `addEnemyModifier`

+ fixes to some extraneous `await`s

* Test fixes

* Fix missing import in revival blessing test

Co-authored-by: innerthunder <brandonerickson98@gmail.com>

* Add back applyPreLeaveFieldAttrs

Attribute was removed due to absence in a cherry-pick

* Make applyPostApplyEffects work

* Fix move-effect-phase.ts applications

Some applyX methods were missed in the cherry pick commit and were still returning functions instead of running the function themselves

* Mock `BattleScene.addPokemonIcon` in tests

* Revival Blessing condition and tests

* Incorporate Despair-Games/poketernity/pull/48

* Break up imports

* Remove enemy modifier chance dead code

* Remove async from applyAbAttrsInternal

Stray async leftover from merge

* Remove docs and comments referencing promises

* Add `user.setTempAbility` to transform phase

---------

Co-authored-by: innerthunder <brandonerickson98@gmail.com>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
2025-02-21 09:34:39 +01:00
Wlowscha
97aeceab58
[UI/UX] Pokédex - Move Pokédex option up the starter select screen menu #5376 2025-02-21 03:26:50 -05:00
Xavion3
bec73fd8d3
[Bug][UI/UX] Remove redundant bgm bar (#5391)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
2025-02-20 22:50:44 -08:00
Wlowscha
6a4c6f1c89
[UI/UX] Pokédex - Informative messages for level up moves #5388 2025-02-20 23:23:34 -06:00
NightKev
13d9140340
[Misc] Update console logging of encounter pokemon on beta/local (#5389) 2025-02-20 19:11:52 -08:00
Sirz Benjie
5072460f4c
[Bug] Fix endless tokens allowing attacks to deal 0 damage (#5347) 2025-02-20 16:16:41 -08:00
Xavion3
ed8d162125
[Balance] Make stat a much larger factor in moveset gen #5383
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-02-21 10:50:39 +11:00
Lugiad
073a36a33e
[Localization] Corrections move-touch-controls-handler local key names (#5365)
* Update move-touch-controls-handler.ts

* Update locales submodule

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-02-21 10:49:57 +11:00
Xavion3
2d067ec7ce
[UI][Enhancement] Allow tera type choice on starter select (#5366)
* Allow tera type choice on starter select

* Make tera type actually apply in run

* Remove logging statement

* Add support for alternate forms
2025-02-21 07:23:08 +11:00
Lugiad
3a4c8eb92e
[UX/UI] [Localization] Summary removed Lv and ID No. as image texts (#5361)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* summary-ui-handler.ts Lv. and ID No. Text

* Remove Lv and ID No.

* Remove Lv and ID No.
2025-02-21 02:08:48 +11:00
Lugiad
c3045b58b6
[Localization] Localizable Lv UP pop-up bar (#5336)
* Update party-exp-bar.ts localizable

* Update party-exp-bar.ts
2025-02-21 02:06:12 +11:00
Dean
a346318f9d
[Move] Implement Quash (#5049)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Add quash logic for single targets

* Multi-squash power

* Update MovePhase constructor

* Start searching from front of phaseQueue instead of weather

* Use findPhase instead of looping to search

* Basic test case

* Test for failure on a already moved target

* Speed order test

* Fix speed test comment

* Fix ForceLastAttr to properly respect speed order

* Respect trick room in quash turn order

* Test for respecting TR

* Add comments, fix var name

* Allow for quashed speed ties

* Avoid reapplying if a move is already forced last

* Spacing

* Quash does fail in a single battle despite this not being documented anywhere

* Add move text

* Update move.ts (readability)

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

* Use globalScene

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-02-19 18:59:54 -06:00
Amani H.
7ec0dba74b
[Bug/Item] Fix Flame Orb Weight Function (#5380)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-02-19 14:19:02 -08:00
Dean
9cc1b17745
[Bug] Fix moves/abilities which modify abilities (#5146)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Add setAbility method to pokemon.ts

* Edit SwitchAbilitiesAttr to use setAbility

* Change AbilityGiveAttr to use setAbility

* Rename setAbility to be more accurate

* Fix AbilityCopyAttr

* Fix AbilityChangeAttr

* Fix Transform

* Fix imposter

* Fix PostDefendAbilityGiveAbAttr

* Actually fix imposter

* Actually fix transform

* Fix CopyFaintedAllyAbilityAbAttr

* Fix Trace

* Fix PostDefendAbilitySwapAbAttr

* Add tests for skill swap

* Add tests for doodle

* Add tests for entrainment

* Add tests for role play

* Add test for simple beam

* Add test for transform

* Add test for imposter

* Add tests for mummy

* Add tests for trace

* Add tests for wandering spirit

* Consider legendary weather when changing ability

* Ensure that passives are not (re)applied when main abilities change

* Add general ability swap test cases

* Fix test name

* Add NoMidTurnActivationAttr

* Remove NoMidTurnActivationAttr from illusion

* Remove extraneous call to triggerWeatherBasedFormChanges

* Fix primal weather clearing

* Change "MidTurn" to "OnGain"

* Change NoOnGainActivationAttr to a field in PostSummonAbAttr

* Add passive support

* Remove redundant parentheses

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

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-02-19 09:02:39 +01:00
NightKev
7fafccf8de
[Test] Disable broken Wimp Out test (#5369)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-02-18 19:47:50 -08:00
Xavion3
8864347cb0
[Move] Make Disable disable most recent move instead of oldest move (#5321)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-02-17 20:53:57 -06:00
Unicorn_Power
5fa77b7177
[Sprite][Exp First batch of exp change (#5231)
* [Sprite][Exp change] Gen 6 - Gen 7

* Sylveon new exp

* 702 Dedenne

* 712-713 exp changes
2025-02-17 20:32:17 -06:00
Unicorn_Power
fd066ac9b2
[Sprite]Batch 5 exp change (#5243)
* 718 and 718-10 exp change and removal of experimental

* 719 exp change and removal of exp

* 362-mega exp change

* 248-mega exp change

* Fix missing pixels on 248-mega back-exp

* screwing up the master.json to properly commit it

Somehow its ignoring the master.json changes when checking mega tyranitar

* Reverted the screw up on Master.json

Trying to fix so test check the correct files and not look for a png that dont exists

* update the exp-sprites.json

after Kev gave me the Info I needed I did this

* fix it and pokemonSprites text is passing

* Final Adjustment for the colors regarding 248-mega.

Adjusted the colors so that it would GLOW and not become darker.

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-02-17 20:27:19 -06:00
Unicorn_Power
3018a747bd
DuskNoir sprite fix and base sprite fix (#5338) 2025-02-17 20:26:36 -06:00
Unicorn_Power
62bacf52a7
[Sprite] Batch 6 exp change last for Gen 6 (#5248)
* 653-654 exp change

* 656 exp change

* 664-665 + 663 exp change.

Will need to remove Exp need in the future

* 714 exp change and removal of Experimental need

Its a better improved version of what we already had all around.

* 656 exp change + static change

Undoing the smiling froakie sadge

* 715 files and base fix

I fix the sprite bug that has been around for the longest time. HELL YEAH

* Finishing touches to 654 variants

Gave Braxien tier 2 and tier 3 custom fire color matching the variants for contrast.
2025-02-17 20:24:05 -06:00
AJ Fontaine
c7ee0173f6
Fix Impidimp front Arctozolt back variants (#5342) 2025-02-17 20:23:10 -06:00
Unicorn_Power
a8bf385899
[Sprite]Batch 3 of exp changes (#5232)
* Pancham-exp change

* 698 -Exp change and undo experimental need

* 703.exp change and undo experimental

* 694-exp and removal of experimental

* 698-fixing missing pixels and removing uneeded files
2025-02-17 19:52:43 -06:00
Unicorn_Power
200d52cd99
[Sprite]-2.0-batch-4-exp-change (#5277)
* 707 Klefki animation change and removal of experimental need

Animation is high enough quality plus personality for the pokemon that there wont be a need to try and make 1 better. this is the best animation for klefki

* 704-705 change of exp + 707 Experimental removal

* +707

 fix a Json over sight and now are displaying properly

* 708 animation change and removal of Experimental need

Phantump's animation quality is already top notch and dont need to stay in exp prison

* 692-693 exp change
2025-02-17 19:52:21 -06:00
Unicorn_Power
9e1cc1f188
651. 661-662. 672 exp change (#5314) 2025-02-17 19:45:28 -06:00
AJ Fontaine
7463bedbfd
Un-screw the pooch (#5363) 2025-02-17 19:44:51 -06:00
Jimmybald1
af91ea85c3
[Bug] Changes Daily Run item stack full message to a delay (#5339)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Co-authored-by: Jimmybald1 <147992650+IBBCalc@users.noreply.github.com>
2025-02-17 19:22:12 +01:00
Lugiad
ed8ef48068
[Localization] Move Touch controls Localization (#5349)
* Update move-touch-controls-handler.ts localization

* Update move-touch-controls-handler.ts
2025-02-17 19:17:04 +01:00
Lugiad
db22354057
Update starter-select-ui-handler.ts Spnaish text size (#5356)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-02-16 22:30:27 -06:00
Blitzy
e1327c1d2d
[Balance] Guarantee Tera Orb as a reward from Rival 4, Remove it from Classic Item Pool (#5353)
* Add Tera Orb to Rival

* Remove Tera Orb from Classic Rewards
2025-02-16 20:40:11 -05:00
Xavion3
0913c77140
Update version number for migration code (#5354) 2025-02-16 18:07:09 -06:00
Sirz Benjie
4361aa089b
[Refactor] Replace integer holder with number holder (#5350)
* Replace integer holder with number holder

* Remove duplicate NumberHolder

---------

Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com>
2025-02-16 15:31:46 -08:00
Xavion3
90d32b886c
[Feature] Tera Rework (#5233)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Commit old stashed changes

* Complete basic implementation of Tera

* Fix effectiveness test

* Make tera retain until forced recall or faint, regain on biome change

* Experimental sparkle fix

* Fix champion teras

* Attempted fix for double battles tera UI bug

* Fix the fix

* Fix linting and test issues

* Fix more tests

* Change int type

* Implement tera for ME trainers

* Cleanup species inclusivity check

* Make tera instant recharge if terapagos in party

* Make useless tera shards not generate

* Implement stellar tera damage boost

* Improve tera selection UI

* Tidy up animation and localisation

* Improve tera button sprite

* Fix Lance tera

* Make tera instant recharge during E4 in classic modes.

* Fix formatting in the tera common animation

The animation was also not playing due to `frameTimedEvents` being missing as well.

* Make tera effect start after animation

* Implement save migration

* Update version number for migration code

---------

Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com>
Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com>
2025-02-16 16:20:50 -05:00
Kenneth West
4bc617bd5f
Fix [BUG] #5081 Wrong visual text when using priority moves on Psychic Terrain (#5091)
* Fix [BUG] #5081 Wrong visual text when using priority moves on Psychic Terrain

* Apply suggestions from code review for global scene change
2025-02-16 15:18:19 -06:00
AJ Fontaine
ef11527b9a
Remove outdated Victini check for monogen challenge (#5309) 2025-02-16 15:07:07 -06:00
Wlowscha
5b1950a1ae
[Bug][UI/UX] Setting proper labels in cost reduction dropdown filter #5316
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-02-15 23:34:10 -05:00
Madmadness65
4d5f9cecf1
Fix Zenith Marshadow missing a party icon (#5301) 2025-02-15 20:32:07 -06:00
NightKev
8f496ee226
Merge pull request #5329 from pagefaultgames/main
Main (1.6.4) -> Beta
2025-02-15 17:26:53 -08:00
Jannik Tappert
8555ef7cb7
[QOL] Make the name and formName readable for bigger sprites in pokedex (#5328)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Make the name, formName and type readable (bring it infront of larger sprites that would block it)

* Dont to type Icons otherwise they will overlay on the "want to go back" text

* Update src/ui/pokedex-ui-handler.ts
2025-02-14 22:51:28 -06:00
AJ Fontaine
7b9d1d6570
[Hotfix] Fix crash involving female Pyroar fusions with exp sprites (#5331)
Some checks failed
Deploy Main / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Github Pages / Github Pages (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
* Fix crash involving female Pyroar fusions with exp sprites

* Update locales submodule
2025-02-14 18:51:41 -08:00
Xavion3
77fbcc70ef
[Bug][Hotfix] Fix fusion with dual type + monotype with shared primary type. (#5322)
Some checks are pending
Deploy Main / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Github Pages / Github Pages (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Fix fusion with dual type + monotype with shared primary type.

* Update version number

* Add test case
2025-02-14 02:40:13 -05:00
damocleas
727bf0d74d
[Bug][Hotfix] Show caught pokemon correctly #5320
Some checks are pending
Deploy Main / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Github Pages / Github Pages (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Merge pull request #5320 from Wlowscha/hotfix-show-caught-pokemon-correctly
2025-02-13 21:25:09 -05:00
Wlowscha
d159901ea1
Updated version 2025-02-14 03:03:58 +01:00
Wlowscha
8f498f1197
Counting default form in caughtAttr for mons that don't have alternative forms 2025-02-14 03:03:14 +01:00
damocleas
f68a833fcf
[Bug][Hotfix] Display caught forms in dex as intended #5319
Merge pull request #5319 from Wlowscha/hotfix-show-caught-forms-in-dex
2025-02-13 20:43:31 -05:00
Wlowscha
7611061378
Updating version 2025-02-14 02:15:24 +01:00
Wlowscha
5ad8f18950
getFullUnlockedData now properly accounts for forms 2025-02-14 02:13:28 +01:00
damocleas
1b16825a50
[Release] 1.6.0
Release 1.6.0 and all that
2025-02-13 19:01:07 -05:00
Sirz Benjie
3fd5414f5c
[Misc] Increment version number (#5317)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-02-13 15:37:54 -08:00
Sirz Benjie
dcd1636338
[i18n] Update locales submodule (#5318) 2025-02-13 15:28:59 -08:00
Sirz Benjie
6acd15970e
[Ability][Bug] Remove partial designation from Quark Drive and Protosynthesis #5315 2025-02-13 16:20:54 -05:00
damocleas
d629bf12ab
[Misc][Balance] Organizing Evil Teams (#5303)
* Organized all evil teams
* Improved Giovanni and other Evil Team Leaders
* Experienced endless pain
2025-02-13 16:20:13 -05:00
Lugiad
f1283ad1c8
[UI/UX] Valentine 2025 Event Banners (#5310)
* Valentine 2025 Event Banners
2025-02-13 16:11:40 -05:00
Wlowscha
be0f3b2ab3
[Bug][UI/UX] Dex bug fixes 12 feb (#5307)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
* Fixed bug when setting tint of eggs for egg move filter

* Form text is properly hidden when going to filters

* Displaying level up moves of alternate forms

* Offsetting form cycle button when uncaught text is shown

* Pokedex buttons now appear on mobile touchpad

* Hotfix to prevent "Normal" form to showing the text

* Preventing filter texts from showing gibberish

* Moving cursor to input text when pressing on filter

* Introducing method to get full obtainable unlocks for a given species

* Filtering obtainable unlocks in dex

* Buying eggs in dex does not crash the game

* Shiny icon does not overlap with luck text for evolutions

* Shiny is maintained correctly when cycling through different pages

* Displacing text elements to avoid overlap for localized form names

* Checking starter caughtAttr in addition to pokemon caughtAttr
2025-02-12 19:14:22 -08:00
AJ Fontaine
595413edd7
[i18n] Update locale submodules (Feb 12 21:30 UTC) (#5308) 2025-02-12 15:14:22 -08:00
Wlowscha
7199aee9ad
[UI/UX] Fix showing form names and types (#5302)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Correctly displaying form names

* Fixed bug which displayed wrong form types

* Handling unobtainable forms

* F button does not show up if there is only one obtainable form
2025-02-12 13:09:25 -05:00
Wlowscha
5743751e5c
[Bug][Test] Adding bypass faint to abilities that need it + fixing Perish Body (#5226)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Added tests for snad spit, seed sower and perish body; for all three, the test checking if the ability triggers after the user faints is failing.

* Adding .bypassFaint() to the three abilities, tests passing

* Apply suggestions from code review

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

* Removed incorrect test for perish song

* Added tests for perish body when one mon already has the perish song tag, both ways

* Changed ability behavior to pass tests

* Removing superfluous conditional

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-02-11 17:01:54 -06:00
Wlowscha
f087162eeb
Adding for text on main dex page (#5300) 2025-02-11 16:40:20 -06:00
AJ Fontaine
b483aa0465
[Sprite] Fix Stunfisk variant backs to use shader (#5293) 2025-02-11 14:39:04 -08:00
Esca
ce8b5752c4
Fix Lunar Dance and Healing Wish not failing when no valid teammates are present (#5195)
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-02-11 16:36:49 -06:00
AJ Fontaine
03011c4601
[Balance] Change IV Scanner to single stack (#5299)
* Make IV Scanner max stack 1

* Apply suggestions from code review

Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>

---------

Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-02-11 16:35:24 -06:00
AJ Fontaine
195a3936b3
[Sprite] Update Litleo/Pyroar exp sprites, enable female exp sprites (#5260)
* Enable female experimental sprites

* Update Litleo/Pyroar exp sprites

Co-authored-by: Unicornpowerstar <gabriella.pahankala@hotmail.se>

* Update sprite test to check exp female variants

* Fix shading on shiny Pyroar, remove unused 668-female files

---------

Co-authored-by: Unicornpowerstar <gabriella.pahankala@hotmail.se>
2025-02-11 14:34:40 -08:00
damocleas
5045b637ff
[Balance] Item Table Removals and increased Wide Lens Frequency (#5296)
* Update modifier-type.ts

* Up weight of event DNA Splicers

* fix attempt 1

* Removed 100 pokemon minimum requirement for Catching Charm

commit fontbane suggestion

Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com>

* Removed unused items from item table

* removed selfStatLowerMoves

---------

Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com>
2025-02-11 14:10:25 -08:00
AJ Fontaine
7fea8603f3
[Refactor] Add support for showing separate species form names (#5294)
* Support for localization of regional form names

* Show names of regional and other forms where appropriate

* Add form name to evolution screen

* Remove formKey parameter

* Update docstrings

* More SpeciesFormKey

Co-authored-by: Wlowscha <54003515+Wlowscha@users.noreply.github.com>

* Clean up

* Fix inconsistent key name

---------

Co-authored-by: Wlowscha <54003515+Wlowscha@users.noreply.github.com>
2025-02-11 15:41:22 -06:00
geeilhan
b31d5fd23e
[Move] Spectral Thief Full Implementation (#4891)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* fully implemented spectral thief

* Update to structure of implementation

* line commented target.scene.queueMessage since message does not exist yet

* changed documentation

* added move-trigger.json key

* removed line comment since key was added to english locales

* removed console.log messages used for debugging

* refactored move-trigger key to race with @muscode13

* added more automated tests

* github tests failed

* removed line comment since key was added to english locales

* refactored move-trigger key to race with @muscode13

* added more automated tests

* github tests failed

* solved conflicts

* Update src/data/move.ts

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

* removed .partial()

* corrected spectral thief name

* changed target.scene to globalScene

* changed comments

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
2025-02-11 03:26:01 -08:00
Sirz Benjie
5296966f70
[Ability] [Move] Implement Magic Bounce and Magic Coat (#5225)
* Add unit tests for magic bounce

* Add reflectable tag and apply to moves

* Add BattlerTagType for Magic Coat

* Add more magic bounce tests

* Add magic bounce test for sticky web source

* Mostly working magic bounce and magic coat

* Fix missing negation on mayBounce check

* Move onto the next target after bouncing

* Fix magic bounce accuracy check test

* Finish magic bounce impl

* Make spikes use leftmost magic bounce target

* Add magic coat tests

* Add MagicCoatTag to battler-tags.ts

* Add final set of tests for Magic Coat / Bounce

* Fix semi invulnerbale check in hitCheck

* Fix magic bounce semi-invulnerable interaction

This was based on smogon's incorrect handling of this situation

* Magic bounce should not bounce anything during semi-invulnerable state

* Activate mirror armor interaction test

Also update i18 locales key to `magicCoatActivated`
2025-02-11 03:25:36 -08:00
NightKev
702a6ba482
[i18n] Update locales submodule (#5298) 2025-02-11 03:24:48 -08:00
Wlowscha
60b27f4f62
[UI/UX] Pokedex updates batch (#5282)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Introducing tray to display form icons in the pokedex; displaying correct information for uncaught and seen forms in pokedex page; dexForDevs now unlocks everything in the main page

* Filtering correctly passive abilities and form abilities. Passive candy symbol is now colored

* Pikachu does not break the dex due to having no passive

* Fixed position of pokemonFormText

* Added button instructions to show forms

* Allowing candy upgrades for evolutions; too expensive options shown in shadow text

* Apply suggestions from code review

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

* Fixed game crashing after save and quit

* Updating import of BBCodeText

* Restoring name on dex page

* getStarterSpecies now looks at speciesStarterCosts to determine what is a starter instead of looking at game data (exception for Pikachu)

* Selecting pokedex option in starter select menu does not play error sound

* Mons having no TM moves don't freeze the game in the dex

* Menu in pokedex page is not pushed to the left when localized options are long

* Removed spurious globalScene.clearPhaseQueue() call

* Showing error message when clicking tm option if no tm moves are available

* Egg move icon and passive icon are darkened when filtering if the respective move or passive has not been unlocked

* Hiding form button when switching to filters

* Hiding "Show forms" button while forms are being shown

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-02-10 23:32:32 -08:00
NightKev
f5ef4a5da9
[Test] Fix Tera Blast test (#5297) 2025-02-10 23:14:54 -08:00
geeilhan
42c4ca27e6
[Ability][Move] Last Respects Refactor and Full Implementation (#5200)
* full implementation of supreme overlord + test

* removed unused import

* changed documentation since Battle.playerFaints is not used in supreme overlord

* Update faint-phase.ts

* changed supreme overlords power calculation function and adjusted tests

* added changes to Last Respects too

* added playerFaints to SessionSaveData to make the counter saveable

* Apply Kev's suggestions

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

* Reset enemy faint counter per battle

* Re-mark supreme overlord as partial

* added automated test case

* moved playerFaints reset to resetArenaEffects

* removed resetEnemyFaintCount() function since it is unused

---------

Co-authored-by: Sirz Benjie <142067137+SirzBenjie@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-02-11 00:53:37 -06:00
Scooom
abf9c83607
[Bug] Fix Fused Pokemon not having stats Flipped correctly (#5295)
Co-authored-by: Scooom <jerry@hosterslice.com>
2025-02-10 19:33:13 -08:00
AJ Fontaine
de5aba3d5e
Fix Greninja floating static backsprite (#5292)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-02-10 20:17:01 -06:00
AJ Fontaine
20ed4db88b
Index Zangoose sprites (#5042) 2025-02-10 20:15:59 -06:00
geeilhan
e75ddfa975
[Ability] Ignore Held Items for Stat Calculation (#5254)
* added the ability to ignore held items at stat calculation

* integer -> number in src/field/pokemon.ts

* added tests from @SirzBenjie

* Update test

* Fix test filename

* added turnorder to tests

* added tera_blast changes and tests

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-02-10 18:56:56 -06:00
Chris
8012a1b559
[Bug] Fix Fun and Games playing move animations even if off (#5187) 2025-02-10 13:48:50 -08:00
AJ Fontaine
3daa9054f3
[Misc] Add data for theoretical Valentine's event (#5244)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Add Valentines event data

* Event ends Feb 21 not March 21

* Event starts Feb 11 12:00 UTC for testing on beta

* Oops I meant February 10

* Add Luvdisc +3 Luck Boost

* Added Applin to round out the total pokemon and because I know people are going to be confused why it isn't here if they've actually read in gen 8 (any readers in chat?)

---------

Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-02-10 00:30:39 -06:00
damocleas
f77bfc8367
Reapply [UI/UX] Show IVs on stats page of summary (#5172) #5291
This reverts commit 612e6a25c1.
2025-02-10 00:40:26 -05:00
Sirz Benjie
c5968d52ce
Merge pull request #5228 from DayKev/add-eslint-promises-rule
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
[Test] Add eslint rule enforcing proper `await` usage in tests
2025-02-09 18:57:22 -06:00
damocleas
612e6a25c1
Revert "[UI/UX] Show IVs on stats page of summary (#5172)" (#5284)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
This reverts commit 366c88517c.
2025-02-09 04:13:06 -05:00
AJ Fontaine
366c88517c
[UI/UX] Show IVs on stats page of summary (#5172)
* Show IVs on stats screen

* Clearer text and gold perfect IVs
2025-02-09 03:41:59 -05:00
PrabbyDD
7cd3217114
[Ability] Implement Mirror Armor (#4769)
* beginnings of implementation of mirror armor

* logging some new changes

* fixing edge cases

* adding changes for sticky web and other features of mirror armor

* adding changes for sticky web and other features of mirror armor

* adding more unit tests and cleaning up notes

* Update src/data/ability.ts

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

* Update src/data/ability.ts

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

* Update src/data/ability.ts

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

* Update src/data/ability.ts

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

* using arena tags source id variable

* updating submodule pointer for locales

* small change

* Update src/data/move.ts

commit Kev fix (minor flip for consistency)

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

* fix import

* Use global scene

* Update tests

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com>
Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com>
2025-02-09 03:14:56 -05:00
dependabot[bot]
a941533a13
Bump vite from 5.4.8 to 5.4.14 (#5275)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 5.4.8 to 5.4.14.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v5.4.14/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v5.4.14/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-08 11:49:02 -08:00
dependabot[bot]
e29b8937f2
Bump vitest and @vitest/coverage-istanbul (#5276)
Bumps [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) and [@vitest/coverage-istanbul](https://github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-istanbul). These dependencies needed to be updated together.

Updates `vitest` from 2.0.4 to 2.1.9
- [Release notes](https://github.com/vitest-dev/vitest/releases)
- [Commits](https://github.com/vitest-dev/vitest/commits/v2.1.9/packages/vitest)

Updates `@vitest/coverage-istanbul` from 2.0.4 to 2.1.9
- [Release notes](https://github.com/vitest-dev/vitest/releases)
- [Commits](https://github.com/vitest-dev/vitest/commits/v2.1.9/packages/coverage-istanbul)

---
updated-dependencies:
- dependency-name: vitest
  dependency-type: direct:development
- dependency-name: "@vitest/coverage-istanbul"
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-08 11:48:47 -08:00
NightKev
090a60dfba
[Test] Update sprite test to give more useful error messages (#5281) 2025-02-08 10:54:45 -08:00
bjparker1226
66024c9bcd
[Bug] Fix Fell Stinger giving boost when enemy dies to another source (#4723)
* check last source of damage instead of last successful attacker

* implement unit tests for Fell Stinger

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-02-08 10:52:59 -08:00
NightKev
db50091f12
Merge pull request #5280 from pagefaultgames/main
Main (1.5.4) -> Beta
2025-02-08 10:46:12 -08:00
NightKev
e6340de046
[i18n] Update locales submodule (#5279) 2025-02-08 09:52:13 -08:00
NightKev
f38393e64f
Revert "[Hotfix] Adding warning message for the maintenance" (#5278)
Some checks failed
Deploy Main / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Github Pages / Github Pages (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
* Revert "[Hotfix] Adding warning message for the maintenance (#5263)"

This reverts commit c88c9337dd.

* Update version to 1.5.4
2025-02-08 12:22:29 -05:00
Wlowscha
66c70b07a7
[UI/UX] In-Game Pokedex (#5083)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Working ui, missing logic, logs

* Filtering starters by name is working

* Filtering moves and abilities correctly

* Opening starter page on button.action

* Removed ugly leftover from title

* Added container for text with different colors and titles

* Showing all species in pokedex with no decorations and shinies

* Filtering includes extra forms; moving cursor from filterText to starters does not reset scrollIndex; toggle button for decorations

* Can access evolution page

* Abilities are colored properly (still missing info overlay)

* Biome filter; displays for baseStats, biomes and evolutions

* Removed lockable select ui handler, replaced by changes to standard ui handler.

* Evolutions are selectable from list and displayed properly

* Keeps shiny variant, gender and form when switching to evolutions; show ability descriptions; properly displaying sprites for megas and other forms

* Listing prevolutions and base forms

* Fixed filtering of baby forms with no biome assigned; Caught filter is ALL by default

* Highlighting text filters, resetting all filters when starting up

* No error messag when cursor on uncaught species, showing sprite again after toggling stats

* Simplified Pokemon Scan logic, accepts separate words as input

* Dynamically resizing ability box, showing ability description on first hover. Removed debug logs.

* Removed some more debug messages.

* Filter bar can adjust cursorOffset and x padding

* Fixed some type definitions

* Fixed more warnings; added localization strings in the pokedex scan overlay.

* Fixed fatal bug due to using Object.keys

* Removed debug messages

* Added try catch construct to prevent error that was breaking reloadHelper tests

* Added filter for starters / evolutions

* Biome filter option for uncatchable mons

* C and V buttons snap cursor to filters

* Changing background to make instructions visible

* Can buy candy upgrades through pokedex

* Displaying base stats as bars in an overlay

* Including baby forms among uncatchable mons

* Including evolutions when filtering by biome

* Working logic for select ui handler with skips and scroll

* -Pokedex page showing biomes from prevolutions; displaying correct biomes for forms of Rotom, Burmy and Lycanroc

* Fixed bug in base stats overlay

* Regional forms display name of region in evolutions and prevolutions

* Better messages for evolution conditions

* Showing proper descriptions for menu

* Adding sound effects to menu, and pokemon cry when opening page

* Changing menu colors to textstyle options supporting a legacy version.

* Fix to getStarterSpeciesId to work with all-unlocks files

* Passing a TextStyle to option select ui handler to allow for shadowed text

* Fixed bug of overlapping labels in text filters

* Fixed bug with supportHover and skipped indices in option select ui handler

* Localization of pokemon number label

* Fix to pokemon number localization

* Fix to pokemon number localization

* Adding some comments, removing useless elements

* More cleanup

* Removed candy upgrade instructions from evolved pokemon; attempting to buy candies from evolution now gives error sound instead of crashing the game

* Attempting to exit from filter text is now allowed if current option is empty

* UI changes to make dex pages work in legacy style

* Pokemon name shown while in alt form is no more capitalized

* Handling uncaught pokemon

* Showing types on Pokémon page

* Introducing globalScene everywhere

* Showing evolution requirements in message box

* Displaying form changing items; now using pokemonFormChanges to only show reachable forms

* Playing correct cry

* Pokemon cry in setSpeciesDetails

* Left and right buttons to turn previous or next pokedex page

* Cleaned up "last" from this.species; turning pages now preserves memories of unlocks

* Pokerus cursor is now treated as decoration

* Correctly displaying prevolutions for Pikachu and Gholdengo

* Uncaught forms can be cycled through (with black sprite and no options available)

* Filtering by moves now shows icons to distinguish egg and tm moves

* Added icons for passive abilities

* Added icons to legacy mode; fixed bug that caused game to hang when switching to or from legacy mode

* Pokedex entries are accessible through party screen

* Adding sort criteria for consistency with starter select screen

* Added options to cost reduction filter for consistency with starter select screen

* Updating optionSelectUiHandler to simplify logic and fix bug of autocomplete showing options incorrectly

* Adding Pokedéx option in starter select screen

* Prevolutions are shown properly again; battle forms are considered caught as long as the base form is caught

* Small fixes to evolution and form change descriptions

* Reworked evolutions menu to incorporate condition descriptions

* Moving evolution condition description logic entirely to the SpeciesEvolution class

* Removed extra Miraidon and Koraidon forms

* Properly showing evolution text for Dunsparce and Maushold

* Displaying uncaught forms for Dudunsparce and Maushold properly

* Displaying correct forms for Urshifu and Toxicitry after evolution

* Cleared up comments

* Updating test for tandemaus evolution

* Localized labels for egg moves and abilities

* Added button to show back sprites

* Back to showing only caught battleforms; added dexForDevs option

* Merging shiny and variant buttons

* Uncaught battle forms options are shown in dark text, like evolutions

* Showing proper gender for mons that can only be (or have only caught in) one gender

* Apply suggestions from code review

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

* Removed unused options from base-stats-overlay

* Fixed import of BaseStatsOverlay

* Displaying form-specific TMs properly; adjusting for passives rework

* Removed logging messages

* resetting containers to prevent memory leaks

* Updating integer to number in pokedex

* Implemented suggestion

* Removed some stray comments

* Fixed logic for cursor coming down from filter bar

* Transition from filters to dex box now works in a visually pleasing way

---------

Co-authored-by: Lugiad <2070109+Adri1@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-02-08 11:48:06 -05:00
Jimmybald1
6e0c8dba88
[Balance] Update base exp values to gen 9 (#5240)
* [Balance] Update base exp values to gen 9

* [Balance] Updated Bloodmoon Ursaluna and Ultra Necrozma with exp formula

---------

Co-authored-by: Jimmybald1 <147992650+IBBCalc@users.noreply.github.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-02-08 08:24:34 -07:00
Sirz Benjie
10502b777c
[Misc] Add .nvmrc for a smoother repo install (#5270) 2025-02-08 08:19:36 -07:00
Madmadness65
280c552d6d
[Audio] Replace End biome BGM with custom BGM by Firel (#5271)
* Replace End biome BGM with custom BGM by Firel

* Update locales submodule

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-02-08 08:16:25 -07:00
damocleas
a46d59b031
[Balance] February 2025 Starter Balance Changes (#5274)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Update egg-moves.ts

* Update passives.ts

* Update starters.ts starter costs
2025-02-07 22:34:15 -07:00
Wlowscha
345329a31e
[UI/UX] Moving Daily Run option (#5273)
* Position of player count on title screen is set dynamically

* Moving daily run under "New run" option
2025-02-07 20:56:17 -07:00
Sirz Benjie
986fbf3cf7
[Move] [Bug] Fix super-niche edgecase with mega gengar and telekinesis (#5266)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Fix super-niche edgecase with mega gengar and telekinesis

* Update TelekinesisTag doc comment

* Remove comment about mega gengar as this update fixes it
2025-02-07 15:00:25 -07:00
Lugiad
e06a9df4cd
[UX/UI] Update emerald font for zero (again) (#5268) 2025-02-07 13:40:58 -07:00
damocleas
c80489460c
[Bug] [Balance] Fix Bouncy Bubble being a spread move, revert back to 100% drain effect (#5269) 2025-02-07 13:28:25 -07:00
Wlowscha
c88c9337dd
[Hotfix] Adding warning message for the maintenance (#5263)
Some checks failed
Deploy Main / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Github Pages / Github Pages (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
* Adding warning message for the maintenance; needs localization

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

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

* Update language codes

* Add French translation

Co-authored-by: Lugiad <2070109+Adri1@users.noreply.github.com>

* Fix variable typo in French translation

* Add `zh-CN`

Co-authored-by: Lugiad' <2070109+Adri1@users.noreply.github.com>

* Add `zh-TW`

Co-authored-by: Lugiad' <2070109+Adri1@users.noreply.github.com>

* Add `ja`

Co-authored-by: Lugiad' <2070109+Adri1@users.noreply.github.com>

* Add `es-ES`

Co-authored-by: Lugiad' <2070109+Adri1@users.noreply.github.com>

* Improve date localization

* Specify 12h/24h time format for each language

* Mark the temporary announcement code with comments

* Add `ko`

Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com>

* Move announcement box 10 pixels to the left

* Update korean translation

Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com>

* Added German translation

Co-authored-by: Lugiad' <2070109+Adri1@users.noreply.github.com>

* Removed some useless spaces in maintenance message

* Reduced announcement font size by 2 px

* Adding italian, fixing japanese

* Use English message as placeholder for pt-BR for now

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Lugiad <2070109+Adri1@users.noreply.github.com>
Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com>
2025-02-06 21:17:36 -07:00
Wlowscha
6c4dedb73e
[Refactor/Bug] Pokemon.leaveField(), Fix Related Abilities (#5191)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Added new AbAttr that triggers whenever a pokemon leaves the field

* Use leaveField everywhere

* Changing order for PreSwitchOutAbAttr

* Don't clearEffects when catching in a mystery encounter

* Attempts to make new overrides for testing

* New options in overrides

* Implemented tests for Desolate Land

* Fixing instruct test to not read turnData of fainted mon

* Removed post faint clear weather

* Apply suggestions from code review

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

* Has_passive_ability override now turns off passives if set to "false", defaults to "null"

* Updating overrides type definitions

* Apply suggestions from code review

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

* Suggestions from review

* Fixed strings in suggestions

* Simplified function to throw balls in tests

* Added tsdocs to overrideHelper.ts

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-02-06 18:37:50 -05:00
Chris
60990deaf2
[Bug] Update Biome text after using Teleporting Hijinks (#5173) 2025-02-06 14:14:28 -07:00
NightKev
f89e42fa7b
[Docs] Update CREDITS.md (#5257)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* [Docs] Update `CREDITS.md`

Add Xavion, condense dev team categories

* Move Dakurei and OrangeRed to dev team list

* Move sirzento to dev team list

* Add Navori, move Sam
2025-02-06 09:13:42 -06:00
NightKev
a7aebb0823
Silvally/Arceus should not change form without its ability (#4738)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-02-05 17:48:17 -06:00
NightKev
e5691f11a4
[Misc] Prevent auto-imports from appending .js to imports (#5256)
Also fixes `#enums` import not being recognized by auto-imports
2025-02-05 21:07:37 +01:00
Sirz Benjie
c363d2b93c
[Ability] Fully Implement Good as Gold (#5245)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Fix good as gold

* Update good as gold tests with Kev's feedback
2025-02-04 21:28:49 -07:00
Wlowscha
8d043a9f55
[Refactor] Replace all instances of integer with number (#5250)
* Replaced instances of "integer" with "number"
2025-02-04 17:56:13 -07:00
Sirz Benjie
0d1dacbc7a
[Bug] Fix softlock caused by shields down preventing faint status (#5252)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-02-03 20:21:49 -08:00
Wlowscha
91a4333e96
[Misc] New data structures for pokedex (#5223)
* Introducing catchableStarters in biomes.ts

* Introducing SpeciesTmMoves with a list of TM moves for each species

* speciesTmMoves now properly accounts for form-specific tms

* Removed argument from transverse function

* Adding types to passive abilities data structures

* Update tms.ts

* Update src/data/balance/passives.ts

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

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-02-03 17:43:52 -08:00
Sirz Benjie
45f4bf3f13
[Misc] add .editorconfig (#5246)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* add .editorconfig

* add .js files to editorconfig, fix insert_final_newline

* Remove stray .editorconfig in src/tests
2025-02-03 18:55:44 +01:00
Wlowscha
3f71f79d7b
[Bug] Ensuring proper .getTypes() behavior with secondary Normal type (#5241)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* customPokemonData.types now accepts Type.UNKNOWN, ignores when determining type

* Changed test for clowning around encounter to look at getTypes() instead of directly accessing customData

* Simplifying logic for fusions when overrides are involved, introducing new tests in pokemon.test.ts

* Renamed overrideTypes to customTypes to avoid confusion with override

* pokemon.getType() properly recognizes Normal secondary type

* Added effectiveness test for ghost on normal

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-02-02 19:17:08 -07:00
Madmadness65
f5c4a205b4
[Sprites] Update many static trainer sprites (#5218)
* Update many static trainer sprites

* Replace BW Plasma Grunts with B2W2 Plasma Grunts

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
2025-02-02 19:14:07 -07:00
Wlowscha
9db2fb1617
Merge pull request #5238 from pagefaultgames/bgm-changes
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
[Audio] Update Team Plasma battle theme to B2W2 version
2025-02-02 22:05:49 +01:00
damocleas
0d4d25b1e2
Merge branch 'beta' into bgm-changes 2025-02-01 22:29:36 -05:00
Madmadness65
268dff2e3f Update Team Plasma battle theme to B2W2 version 2025-02-01 21:08:41 -06:00
Esca
0da777ff80
[Bug] [Mystery Encounter] Force Clowning Around Blacephalon and Option 3 to roll two different types (#5234)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-02-01 19:52:45 -07:00
Madmadness65
d318c9b9ae Merge branch 'beta' into bgm-changes 2025-02-01 20:40:14 -06:00
Wlowscha
82da3c1b6d
[Bug][Refactor] Custom types from MEs are correctly applied on form changes (#5229)
* customPokemonData.types now accepts Type.UNKNOWN, ignores when determining type

* Changed test for clowning around encounter to look at getTypes() instead of directly accessing customData

* Simplifying logic for fusions when overrides are involved, introducing new tests in pokemon.test.ts

* Fixed typo

* Fixed another typo

* Renamed overrideTypes to customTypes to avoid confusion with override

* Fixing comments
2025-02-01 20:32:37 -06:00
NightKev
dcb4299aaf
[Misc] Add update-locales:remote command to package.json (#5237) 2025-02-01 20:14:12 -06:00
NightKev
2cac113959
[i18n] Update locales submodule (#5236) 2025-02-01 19:03:40 -07:00
Blitzy
5c5622ed0e
[Enhancement] Add Kukui and Mustard as Champions and Colress as an admin. (#5224)
* Add data for Colress / Kukui / Mustard

* Add Colress / Kukui / Mustard names

* Move Kukui above Hau

* Replace Rood dialouge, Add Kukui / Mustard

* Update trainer-config.ts

* Update battle.ts

* Update challenge.ts

* Update battle.ts

* Update challenge.ts

* Add music & sprites for Colress, Kukui, & Mustard

---------

Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-02-01 19:03:34 -07:00
Wlowscha
4cc62c9d76
[UI/UX] Moving the "Run History" option to title phase (#5139)
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-02-01 19:02:28 -07:00
damocleas
4dc81c4e7b
Merge branch 'beta' into add-eslint-promises-rule 2025-02-01 19:23:07 -05:00
Wlowscha
38e2abc059
[Balance] Removing Pain Split from boss move pool (#5235)
* Adding HpSplitAttr moves to those removed from the boss pool

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
2025-02-01 17:06:13 -07:00
Jimmybald1
da076d0aa2
[Bug] Fix #5211 gender override would not activate for Male (#5220)
Co-authored-by: Jimmybald1 <147992650+IBBCalc@users.noreply.github.com>
2025-02-01 16:31:29 -07:00
NightKev
7d6036df98 Fix files glob 2025-02-01 01:29:25 -08:00
NightKev
c2a7afc5ba [Test] Add eslint rule enforcing proper await usage in tests 2025-02-01 00:54:04 -08:00
Scooom
db37dcc204
[Misc] Add 100% New Save File (#5104)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
2025-01-30 21:25:06 -07:00
Blitzy
5539c5f21f
[Balance] Refactor and Update Champion Teams (#5089)
* Update trainer-config.ts

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
2025-01-30 16:51:08 -07:00
Blitzy
6446e1b7ad
[Balance] Update Evil Leader Teams (#5171)
* Update Evil Leaders

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
2025-01-30 16:45:04 -07:00
NightKev
5280f309f8
[Misc] Add update-version commands to package.json (#5204)
Version numbers are in the format of `MAJOR.MINOR.PATCH`

Commands added are `update-version:patch` and `update-version:minor`
2025-01-30 15:32:12 -08:00
Wlowscha
e5c0b11c02
[Misc] Removing unused forms of Koraidon and Miraidon (#5221) 2025-01-30 14:46:19 -08:00
Esca
a255e06d82
[Bug] [Move] Opponent's Healing Wish now checks opponent's party (#5207)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-01-30 12:26:05 -07:00
Sirz Benjie
6b36e4ca06
[Ability] Fully implement shields down (#5205) 2025-01-30 12:21:48 -07:00
Madmadness65
861c2e9274
[Bug] Fix Rapid Strike Urshifu not appearing in wild/trainers (#5216) 2025-01-30 09:33:04 -07:00
Xavion3
6c845cc0d3
[Refactor] Add support for form and evolution specific passives (#5193)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Add support for form and evolution specific passives

* Update src/data/pokemon-species.ts

---------

Co-authored-by: Amani H. <109637146+xsn34kzx@users.noreply.github.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-01-29 21:35:01 -07:00
AJ Fontaine
a9ffe03804
[Misc] Rename battle music, experimental sprites settings (#5174)
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-01-29 20:43:44 -07:00
Wlowscha
974fe9f7d3
[UI/UX] Merged shiny and variant buttons in starter select menu (#5213)
* Merged shiny and variant options

* Modified test of starter-select ui to reflect button changes

* Removed unused graphics elements
2025-01-29 20:07:44 -07:00
NightKev
0989128deb
[Bug][Mystery Encounters] Use proper BST calculation (#5199)
Mystery Encounters that check the base stats of a pokemon will
no longer check modified BST and instead check the actual BST
2025-01-29 19:47:09 -07:00
AJ Fontaine
4e0b10769b
[Bug] [UI/UX] Allow arena flyout during target selection (#5208) 2025-01-29 19:25:58 -07:00
Bertie690
4c17ebd400
[Bug][Test] Instruct Bugfixes + More tests (#5134)
---------
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-01-29 19:19:05 -07:00
Madmadness65
ec09186264
[Audio] Replace Title BGM with custom BGM by Firel (#5189)
* Replace Title BGM with custom BGM by Firel

Also added descriptions for the battle scene and arena's getBgmLoopPoint methods.

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
2025-01-29 17:51:14 -07:00
damocleas
1e6c74abb8
Merge branch 'beta' into bgm-changes 2025-01-29 19:38:46 -05:00
NightKev
e88b8aeb6f
Merge pull request #5212 from pagefaultgames/main
Main to Beta 1.5
2025-01-29 16:37:03 -08:00
AJ Fontaine
8d20b7b5e0
[Hotfix] Fix event encounters not evolving (#5206)
Some checks failed
Deploy Main / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Github Pages / Github Pages (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
Your snakes shall now evolve properly, wahoo!
2025-01-28 18:53:07 -07:00
damocleas
d14a5b8819
[Misc] Update version number to 1.5.1
#5203
2025-01-28 19:28:41 -05:00
NightKev
7563a6cd0b [Misc] Update version number to 1.5.1 2025-01-28 16:24:01 -08:00
AJ Fontaine
9fb9bb7e5d
Specify available langs for yots event banner (#5202) 2025-01-28 18:09:50 -06:00
damocleas
7ee573937e
Release 1.5.0
Some checks are pending
Deploy Main / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Github Pages / Github Pages (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Merge pull request #5177 from pagefaultgames/beta
2025-01-27 19:03:43 -05:00
AJ Fontaine
8d11313458
[Misc] Charms in any events (#5194)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
2025-01-27 14:44:21 -08:00
Lugiad
ec68ec2066
[UI/UX] Year of the Snake event banners (#5192)
* Update loading-scene.ts

* 2025 Lunar Year Banners
2025-01-27 15:22:47 -07:00
NightKev
2593d0206c
[i18n] Update locales submodule (#5190)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-01-26 16:12:11 -08:00
Madmadness65
8a2ae0a683 Upload fixed version of title music 2025-01-26 17:01:59 -06:00
Madmadness65
15f88fcc39 Replace Title BGM with custom BGM by Firel
Also added descriptions for the battle scene and arena's getBgmLoopPoint methods.
2025-01-26 12:58:46 -06:00
David Yang
33982c311e
[UI/UX] Allow viewing egg list from rewards screen (#5181)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-01-26 10:28:03 -07:00
AJ Fontaine
f1c06a5476
[Sprite] Fix Lugia backsprite being cut off (#5144)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-01-25 18:58:21 -08:00
damocleas
706a23238c
Revert "[Bug] Fix miniblackhole (#5169)" (#5183)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
This reverts commit 9c29cdc63d.
2025-01-25 14:29:09 -08:00
NightKev
996ce5d986
[Misc] Update version to 1.5.0 (#5175)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-01-24 21:06:57 -08:00
NightKev
1a57d3998f
Merge branch 'main' into beta 2025-01-24 21:04:13 -08:00
AJ Fontaine
8685ec3c3c
[Misc] Rework some aspects of timed events (#5099)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Refactor timed event changes

* Use getWeather function

* Add mystery encounter tier change/disabling to timed events

* Event luck boost, event encounter helper function

* Events without shiny boost shouldn't give shiny charm

* globalScene -> this in battle scene class

* Change event pools
2025-01-24 15:59:24 -07:00
Bertie690
747656e8df
[Test] Added learn move utility function & level cap overrides (#5058)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Added learn move utility function
* Added utility functions
* add another test
* Update overrides.ts
* Update moveHelper.ts
* Update overridesHelper.ts
---------
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-01-23 18:47:22 -07:00
Xavion3
9c29cdc63d
[Bug] Fix miniblackhole (#5169)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-01-23 17:18:21 -07:00
Lugiad
134c6e928f
[UI/UX] New version of the 0 (zero) of pokemon-emerald-pro font (#5167)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-01-22 11:15:48 -07:00
Wlowscha
d10b7c05f7
[Refactor] Descriptions for evolution and form change requirements (#5147)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Adding extensions of the SpeciesEvolutionCondition class

* Commented out logs

* Introducing descriptions for form changes; new class SpeciesFormChangeAbilityTrigger which is functionally identical to SpeciesFormChangeManualTrigger but has appropriate description

* Fix in description of compound trigger

* Commenting out logs

* Small fixes, clearing logs, implementing suggestions

* Apply suggestions from code review

Trigger functions are declared with no arguments when not needed.

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

* Removed exports for new classes

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-01-21 16:42:27 -07:00
AJ Fontaine
271e51be58
[Balance] [Feature] Match evil teams to monogen challenge (#4850)
* Match evil teams to monogen challenge

* Remove outdated comment

* Remove BBL adjustment

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-01-21 15:40:05 -07:00
Madmadness65
93fc779350
[Bug] Fix G-Max Urshifus having wrong movesets (#5162) 2025-01-21 15:34:18 -07:00
AJ Fontaine
39283e373b
[UI/UX] Add sort by caught/hatched count to starter select (#5161)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
2025-01-20 15:43:55 -07:00
NightKev
d85aedbdfc
[Bug] Prevent pokemon with 0 HP from being statused (#5137)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* [Bug] Prevent pokemon with 0 HP from being statused

* Update test

* Move check to `trySetStatus()` and update test
2025-01-20 09:12:58 -08:00
NightKev
d495c48716 [i18n] Update locales submodule 2025-01-20 09:11:58 -08:00
Wlowscha
f551c51413
[UI/UX] Adding options to see mons with only one or only two cost reductions (#5045) 2025-01-20 10:01:42 -07:00
Unicornpowerstar
ce30897c0a
[Sprite] Update Primal Kyogre Backsprite (#5156)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-01-19 16:48:07 -07:00
Scooom
58b7f67ca8
[Challenge] Fix flip inverse achievement (#5145)
* Actually issue FLIP_INVERSE achivement

* Local to remote

* Update src/system/achv.ts

Fix correctly giving FLIP_INVERSE

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

---------

Co-authored-by: Scooom <jerry@hosterslice.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-01-19 12:15:59 -07:00
Unicornpowerstar
05485aefdd
[Sprite] Flutter mane back sprite adjustments (#5057)
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-01-19 11:15:33 -07:00
geeilhan
f3256ec5d4
[Move] Improve implementation of Rage Fist damage increase (#5129)
* implementation of rage fist

* Apply suggestions from code review

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

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

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

* added removed TODO from some test cases

* Apply suggestions from code review

Added changes to documentation and cleaning up code

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

* added protected to updateHitReceivedCount()

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-01-19 11:52:50 -06:00
Unicornpowerstar
75e66b4099
[Sprite] Update Shelly sprite (#5155)
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-01-19 11:50:19 -06:00
Unicornpowerstar
46e1268a64
[Sprite][Color fix] 3 Venusaur and all forms (#5153) 2025-01-19 11:26:59 -06:00
NightKev
ab17df83c7
[Misc] Disable enforced type-only imports in overrides.ts (#5154) 2025-01-19 09:13:48 -08:00
NightKev
24f1fedcd0 [i18n] Update locales submodule
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-01-18 21:11:29 -08:00
NightKev
ea3fbecfd3
[Misc] Replace globalScene with this in BattleScene (#5142) 2025-01-18 19:12:50 -08:00
damocleas
ae2c9071e4
[Balance] Update starters.ts, removed redundant starters (#5125)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
2025-01-17 17:40:40 -05:00
Scooom
ca0522436a
[Challenge] Make the Flip Inverse Challenge Secret (#5133)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Co-authored-by: Scooom <jerry@hosterslice.com>
2025-01-16 16:50:19 -08:00
AJ Fontaine
481616c2ad
[Sprite] Fix female Scizor variants not showing (#5097)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-01-16 16:25:50 -05:00
NightKev
188664f389
[Sprite] Fix game not waiting for variant data to finish loading (#5130)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Co-authored-by: Moka <millennium.stitcher@gmail.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-01-15 20:25:08 -07:00
AJ Fontaine
c3641a370f
Add BW crit throw sound (#5131) 2025-01-15 20:11:19 -07:00
Scooom
ee6115f49d
[Challenge] Flip Stats Challenge (#5087)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Implement Flip Stat Challange

* Add Achivement

* Update challenge code to block other challenges.

* Add Achievment Image

* Add FLIP_STAT to enum ChallengeType

* Fix comment for FlipStatChallenge

* Add applyFlipStat override to Challenge Class, and add override inside of FlipStatsChallenge

* Add ChallengeType.FLIP_STAT case to export function applyChallenges (Master Switch Function)

* Properly block other challange achviements

* Change the way achivements are blocked by challenge modes to a more flexible method

* Adjust the image for Flip Stat, and add an additional achivement for completing both Flip and Inverse

* Fix FLIP_INVERSE achivement to check ALL challanges are met, not SOME

* Remove outdated image

* Fix FlipStat applyChallenges inside calculateBaseStats

* Update locales

---------

Co-authored-by: Scooom <na@na.na>
Co-authored-by: Scooom <jerry@hosterslice.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-01-15 01:55:14 -08:00
Madmadness65
608a92b70c Revert "Update locales"
This reverts commit 95c6f4cd52.
2025-01-15 03:39:52 -06:00
Madmadness65
95c6f4cd52 Update locales 2025-01-15 03:33:52 -06:00
Jimmybald1
d624733565
[Bug] Fix #5034 removed unnecessary caught data block for certain forms (#5119)
Co-authored-by: Jimmybald1 <147992650+IBBCalc@users.noreply.github.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-01-15 02:12:50 -07:00
Dean
39b4d74e95
[Bug] Fix #5029 Memory leak when saving and exiting (#5128)
* Add destroy function to ui handlers

* Implement destroy() for StarterSelectUiHandler

* Update battlescene to free memory when resetting

* Document destroy for starter select

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
2025-01-15 02:06:09 -07:00
AJ Fontaine
e2c6bec418
[Bug] Fix Poltergeist message displaying before move use (#5040) 2025-01-15 00:53:16 -08:00
Wlowscha
d2a3e4bb2d
[UI/UX] Looping cursor in save slot selection screen (#5109)
* Save slot selection allows looping

* Removed debug logs

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
2025-01-15 00:23:38 -07:00
Wlowscha
7ae216f0d6
[UI/UX] Shop cursor freedom (#5110)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Allowing cursor in shop to cycle horizontally

* Improved cycling of commands

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
2025-01-14 23:18:24 -07:00
damocleas
d5f84cf3df
Change Archen HA from Emergency Exit to Wimp Out (#5124) 2025-01-14 19:07:09 -07:00
Amani H.
6681a913fe
[Bug] Prevent Duplicate Signature Species in Trainer Battles (#5059)
* [Bug] Prevent Duplicate Signature Species in Trainer Battles

* Apply Kev's Suggestion

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

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-01-14 18:25:18 -07:00
schmidtc1
001b61c1c7
[Bug][Move] Refactor moves that call a random move (#3380)
* Combine moveset from allies and uses it to get a move

* Clearer implementation of combining user and teammates' moves

* Refactor assist and sleep talk to use metronome's attribute for calling a move

* Refactor move filtering in RandomMovesetMoveAttr, creates arrays with invalid moves for assist/sleep talk

* Refactor RandomMoveAttr to set moveId in condition, places reused code in callMove in RandomMoveAttr

* Correct invalid move lists, adds Max/Z moves to metronome's list

* Remove ignoresVirtual from beta merge

* Remove Max/Z moves per frutescens' comment

* Fix bug with metronome/copycat/assist/sleep talk targeting ally

* Experimental async/await to be tested

* Refactor other attributes to extend CallMoveAttr

* Replace QueuedMove with TurnMove, refactor to attempt two-turn move fix for metronome

* Fix Swallow test due to TurnMove refactor

* Further fixes for TurnMove refactor

* Fix metronome two turn moves for enemy pokemon

* Replace nested ternary with if-else block per DayKev's comment

* Minor fixes

* Adjust command phase args handling

* Create metronome test, refactor RandomMoveAttr for easier testing

* Add unit test for recharge moves

* Refactor Copycat and Mirror Move, adjust move targeting

* Add unit test for ally targeting with Aromatic Mist

* Add tests for secondary effects and recharge moves for metronome

* Add test for Roar, remove test for Acupressure

* Create test for Assist

* Add test for assist failing

* Add sleep talk unit test coverage

* Adjust move-phase to better track last move for copycat, write and update unit tests for assist/copycat

* Create moveHistory in Battle to track all moves used, adjust mirror move to use this, writes unit tests

* Correct mirror move implementation, rewrite unit test to adjust

* Add docs to attrs, update assist to only grab allies sets

* Update assist unit test to match expected functionality

* Update metronome unit test to use getMoveOverride

* Update copycat unit test to use metronome getMoveOverride mock

* Fix phase interception

* Add docs from missed conversations

* Update assist tests to use manual moveset overrides

Minor fixes to other tests

* Remove `export` from `CallMoveAttr`

* Add missing `.unimplemented()` to some Max- and Z-Moves

---------

Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-01-14 15:26:35 -08:00
Jimmybald1
f1e500400a
[Balance][Bug] Fix off by one error in Generate random biome and Daily Mode now has its own function (#5121)
* [Balance] Allow Island and Laboratory in Generate Random Biome

* [Bug] Fix off by one error in Generate Random Biome

* [Balance] Daily Mode now has its own Generate Random Starting Biome

* [Misc] Filtering out Town and End specifically instead of assuming enum value stays consistent forever

---------

Co-authored-by: Jimmybald1 <147992650+IBBCalc@users.noreply.github.com>
2025-01-14 15:45:11 -07:00
NightKev
3a3ebfb783
[Balance] Multi-hit moves now use gen 5+ behavior (#5117)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
2025-01-12 15:39:06 -08:00
NightKev
0107b1d47e
[Refactor] Create global scene variable (#4766)
* Replace various `scene` pass-arounds with global scene variable

* Modify tests

* Add scene back to `fade[in|out]()` calls

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

* Fix Bug Superfan ME test

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

* Re-enable fixed test

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

* Rename `gScene` to `globalScene`

* Move `globalScene` to its own file to fix import/async issues

* Fix `SelectModifierPhase` tests

* Fix ME tests by removing `scene` from `expect()`s

* Resolve merge issues

* Remove tsdocs referencing `scene` params

Remove missed instances of `.scene`

* Remove unnecessary `globalScene` usage in `loading-scene.ts`

* Fix merge conflicts

* Attempt to fix circular import issue

* Found the source of the import issue

* Fix merge issues

---------

Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2025-01-12 15:33:05 -08:00
Madmadness65
f83ab00ce4 Add missing 'unused' comment before Max Moves
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-01-12 13:34:21 -06:00
Ori shalhon
d3fafa2770
[UI/UX] Add random selection option during starter select (#5075)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
* Update submodule public/locales to the latest upstream commit

* feat: add random selection option during starter select

* move random selection behavior to seperate label

* Update public/locales submodule reference

* Remove debug console.log statement

* Update locales

* Update src/ui/starter-select-ui-handler.ts

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

* Update src/ui/starter-select-ui-handler.ts

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

* Update src/ui/starter-select-ui-handler.ts

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

* Update locales submodule

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-01-10 20:10:52 -06:00
Amani H.
29087710b7
[Balance] Adjust Orb & Light Ball Weight Functions (#5070)
* [Balance] Adjust Orb & Light Ball Weight Functions

* Apply Kev's Suggestions

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

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
2025-01-10 19:34:16 -05:00
Zain
b0c347e20d
[Bug] Fixed defog not removing the target's Safeguard and Mist (#5107)
* Fixed defog not removing the target's Safeguard and Mist

* Made requested changes and added unit test

* Remove stray newline

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-01-10 18:29:25 -06:00
Jimmybald1
d0db6a35d2
[Bug] fix #5102 Catching Charm now always max weight in Daily Mode (#5103)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
Co-authored-by: Jimmybald1 <147992650+IBBCalc@users.noreply.github.com>
2025-01-08 20:27:23 +01:00
Unicornpowerstar
07b69c9485
[Sprite] Fix Issues with the 658-ash.json to display sprite correctly (#5055)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
* [Sprite][Color] Fixing Issues with the 658-ash.json to display sprite correctly

- Fix colors not being shown correctly in the json.
   - Said fix are adding a new entry to separate the whites that are F8f8f8 by adding f4f4f4
   - Changed the wrong color into the correct one on the rare.

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2025-01-06 16:26:00 -08:00
NightKev
197b264fb0
[Bug] Gimmighoul & Eevee eggs will now properly randomize their forms (#5080) 2025-01-06 16:24:08 -08:00
Lugiad
1be95e8a1a
[Localization] [UI/UX] Updates for pokemon-emerald-pro & pkmnems (#4968)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
* Add files via upload

* Add files via upload
2025-01-04 23:43:40 +01:00
damocleas
bfe0d9bb79
Merge pull request #5076 from pagefaultgames/beta
Some checks failed
Deploy Main / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Github Pages / Github Pages (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
Minor Release 1.4.3
2025-01-03 19:35:41 -05:00
Amani H.
355e70328c
[Misc] 1.4.3 Version Bump + Locales Update (#5077)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-01-03 18:27:26 -06:00
AJ Fontaine
ec5dadb4f4
[Misc] Undo winter holiday event changes (#5068)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2025-01-03 16:42:06 -07:00
NightKev
206419c9f1
Merge pull request #5061 from pagefaultgames/main
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
Merge main (1.4.2) into beta
2024-12-31 02:38:07 -08:00
NightKev
14902cdb60
[Hotfix] Prevent Keldeo from changing forms in Daily Run (#5060)
* [Hotfix] Prevent Keldeo from changing forms in Daily Run

* Update patch version
2024-12-30 20:20:23 -08:00
NightKev
1b6374f469
[UI/UX] Change label for music settings (#5053)
Changes from "Consistent/Mixed" to "Gen V + PMD"/"All Gens"

Update `MusicPreferences` enum

* Update locales submodule
2024-12-30 18:55:28 -08:00
Wlowscha
6946abadb8
[UI/UX] Add cursor memory option (#5028)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Adding a new key determining whether the command cursor resets at the beginning of each new battle.

* Allowing user to toggle commandCursorReset on and off.

* Changing option name to commandCursorMemory

* Fixed caps in settings.ts

* Moved Command_Cursor_Memory from Display settings to General settings
2024-12-30 09:35:45 -06:00
Asuka Kuwahara
8f884a7ef0
[BUG] fix #5038 update shedinja's gender to genderless on evolution (#5039)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* update shedinja's gender to genderless

* update unit test
2024-12-29 20:09:11 -06:00
NightKev
10e0f9f0de
Merge pull request #5024 from pagefaultgames/main
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
Merge main to beta
2024-12-20 19:32:30 -08:00
AJ Fontaine
8457fb96fe
[Hotfix] Fix off-by-one error for event encounters (#5022)
Some checks failed
Deploy Main / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Github Pages / Github Pages (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
* Fix off-by-one error for event encounters

* Increment version to 1.4.1

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-12-20 18:41:07 -08:00
damocleas
f95a5d41cb
Merge pull request #5019 from pagefaultgames/beta
Some checks are pending
Deploy Main / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Github Pages / Github Pages (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Release 1.4.0
2024-12-20 19:06:24 -05:00
AJ Fontaine
6392ee857c
[Balance] Allow event Stantler to evolve (#5021)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-12-20 15:53:42 -08:00
NightKev
e75fa0d16d
Merge main into beta to fix git history (#5020)
Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com>
2024-12-20 14:27:49 -08:00
AJ Fontaine
82dad5568c
[Balance] Fix Annihilape Tera Blast TM Compatibility (#5016) 2024-12-20 14:14:16 -08:00
damocleas
e9d97db11b
Winter Holiday Event (#5015)
* Update trainer-victory-phase.ts

* Update starters.ts for event

* Update timed-event-manager.ts

* Event stuff

* Cleaning up

* Winter Holiday 2024 Banners

* Update timed-event-manager.ts

* Fix event banner

* Update trainer-config.ts

* FoF, BBound, weather changes

* Fix German Banner

* Add Iron Bundle to event encounters

* Update delibirdy-encounter.test.ts

* Update src/data/weather.ts

Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com>

---------

Co-authored-by: AJ Fontaine <fontbane@gmail.com>
Co-authored-by: Lugiad <2070109+Adri1@users.noreply.github.com>
Co-authored-by: AJ Fontaine <36677462+Fontbane@users.noreply.github.com>
2024-12-20 14:11:06 -08:00
AJ Fontaine
bbb6b46801
[Balance] Change a few early gym teams (#4998)
* Change gyms accessible before wave 30

* Prevent wave 20 gym leader from evolving

* Check game mode for wave 20 trainer evo ban

* Add Whitney Girafarig Crasher Wake Magikarp
2024-12-20 14:10:38 -08:00
AJ Fontaine
1953e8dbe9
[Balance] Check previous level moves for redundancy when spawning TMs (#4996) 2024-12-20 14:10:23 -08:00
NightKev
ba28511046
Bump version number to 1.4.0 (#5013) 2024-12-20 12:25:34 -08:00
NightKev
0022972be9 [i18n] Update locales submodule 2024-12-20 12:24:09 -08:00
NightKev
6ef15eca4a [i18n] Update locales submodule
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-12-19 16:18:32 -08:00
NightKev
29a079cfd3
Revert "[UI/UX] Refactor and enable seasonal splash messages (#5009)" (#5014)
This reverts commit 806585f1a6.
2024-12-19 16:04:12 -08:00
AJ Fontaine
806585f1a6
[UI/UX] Refactor and enable seasonal splash messages (#5009)
* Refactor and enable seasonal splash texts

* Update splash text test
2024-12-19 12:01:40 -08:00
NightKev
708e58d083 [i18n] Update locales submodule 2024-12-19 11:45:00 -08:00
NightKev
62e4a7ec54
[Misc] Update CREDITS.md (#5003)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Add muscode and geeilhan to CREDITS.md

* Sort list alphabetically

* Change subcategory to "Other Code Contributors"

* Add Lugiadrien and Zé Ricardo

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

---------

Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2024-12-18 12:01:19 -08:00
Lugiad
cb719d99a5
[i18n] Update party-ui-handler.ts (#4986)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
2024-12-16 03:34:14 -08:00
NightKev
f6f29f0f66
[i18n] Update locales submodule (#4992)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-12-15 13:38:51 -08:00
NightKev
90c8c97437 Fix BattleBond Greninja moveset: Add Mat Block, remove duplicate move
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-12-14 10:15:21 -08:00
NightKev
dfde40f1ae
[Misc] Update "Yda's Dex" credit (the tool is now gone) (#4988) 2024-12-14 06:55:23 -08:00
PrabbyDD
5db3074e2c
[Move] Implement Lunar Dance (#4926)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
* beginning immplementation of lunar dance

* adding tests

* changing in game message and making full hp message not display

* Reuse Healing Wish's move attr, update test

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-12-09 21:25:28 -06:00
Lugiad
f2ef3620b5
[Localization] Localizable Event Timer (#4971)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
2024-12-06 17:49:09 -08:00
Jannik Tappert
22f4e747ab
Login now shows "beta" when playing on beta (#4973) 2024-12-06 17:48:55 -08:00
Tempoanon
6d903440b4
Release 1.3.0
Some checks failed
Deploy Main / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Github Pages / Github Pages (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
Release 1.3.0
2024-12-03 18:05:48 -05:00
NightKev
757fe1a17c
[Misc] Update credits (#4942)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
* Create `CREDITS.md`

* Add categories

* added Firel biome

* Update README.md

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

* Add Leparagon to Trainer Sprites

* Add balance team

* Update music credits for Andr06 (new Forest BGM)

* Add dev team and past contributors to credits

* Add link to wiki credits page for pokemon sprites

* Update indentation

* Update dev credits

* Add pancakes

* Add wormhood

* Add Mystery Event Sprites section in Art

Add Past Contributors section in Balance

* Standardize emojis to primary categories only

* Update Mystery Event Sprites section

* Fix typo

* Add wiki team

* Add Special Thanks section

Used for external contributors/community members that aren't part of
the main PokeRogue team

* Add Discord mod team

* Add Translation team

* Add External Tools section

* Update CREDITS.md

* Update CREDITS.md

* add missing é in Poké in various spot

* Add Red (iOS App) to External Tools section

* Update Red's credit

* Update art credits

* Update vari and kieran

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
Co-authored-by: Lugiad <2070109+Adri1@users.noreply.github.com>
Co-authored-by: Moka <millennium.stitcher@gmail.com>
2024-12-03 17:52:13 -05:00
damocleas
50a4669a26
[Balance] [Beta] Egg Move Fixes (#4965)
* Update egg-moves.ts

* Update egg-moves.ts
2024-12-03 21:22:38 +01:00
PigeonBar
dd72c5e189
[Move][Beta] Powder edge cases (#4960)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* [Move][Beta] Powder edge cases

* Fix Heavy Rain check to account for weather suppression

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

* "{Pokemon} used {Fire-type move}!" now displays before Powder activation

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* Make `showMoveText()` and `showFailedText()` public for now

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
2024-12-02 22:28:57 -08:00
Moka
c6e80de1be
[Misc] 1.3.0 bump version + locales update (#4956)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* bump version + update locales
2024-12-02 21:15:43 +01:00
damocleas
3ca0fdae6b
[Balance] December Starter Balance Changes (#4883)
* Update passives.ts

* Update egg-moves.ts

* Update egg-moves.ts

* Update species-egg-tiers.ts

* Update egg-moves.ts

* Update egg-moves.ts

* Update starters cost

* Update egg-moves.ts

* fixed mispell

* update egg tests to match latest species egg tier changes

* Update starters.ts - fixed placements and reduced Duraludon back to 5

* Update species-egg-tiers.ts fixed placements

* Kartana and Iron Valiant passive change

* Update passives.ts

* Update egg-moves.ts

* Update species-egg-tiers.ts

* Update starters.ts

* fix '

---------

Co-authored-by: Moka <millennium.stitcher@gmail.com>
Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2024-12-02 14:59:02 -05:00
PigeonBar
2f377f26b7
[P1 Bug] Fix multi lens granting infinite Future Sight hits (#4961)
* [P1 Bug] Fix multi lens granting infinite Future Sight hits

* Updated `.partial()` tags

* Added corresponding TODO comments to tests
2024-12-02 12:40:59 -05:00
innerthunder
e930536efe
[Move] Implement Powder (with edge case) (#3662)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Powder basic implementation

* Add Powder integration tests

* Fix thaw test

* Use new test utils and type check function

* More edge case tests

* Make Powder (P)

* Add locale keys

* Add placeholder common anim

* Use CommonAnimPhase instead of async animation

* Add comments with new English text

* Make Powder `edgeCase` instead

* ESLint

* Fix imports

* Add `moveName` key arg for other languages

* ESLint

* Update locales

* Fix pages issues

* Update Powder explosion animation

* Update common-powder.json

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

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

* Remove lingering TIMEOUTs

* More test cleanup

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-12-01 14:27:55 -08:00
Bertie690
1607a694c3
[Move] Partially Implement Instruct (#4857)
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com>
2024-12-01 14:27:17 -08:00
Amani H.
0556e1ad50
[Balance] Adjust Flame/Toxic Orb Weight Functions (#4954)
* [Balance] Adjust Flame/Toxic Orb Weight Functions

* Adjust Booleans

* Add Documentation

* Implement More Granularity

* Minor `if` Change
2024-12-01 14:24:47 -08:00
Mumble
282b0c8215
Added features to prevent test flakiness. (#4959)
Co-authored-by: frutescens <info@laptop>
2024-12-01 14:24:16 -08:00
Mumble
2b59a53285
[Bug][UI] Fixes to Run History Logging (#4716)
* new function

* weak attempt of documentation

* mysterious chest handled...? maybe.

* override comments

* one more instruction

* fixing up the logging lol

* lah

* fixing it up

* coommrent

* lalal

* run info fixes

* Addressed PigeonBar's comments

* Centered run info text + fixed trainer sprites.

* Fixed function name.

* Update tsdoc in `overrides.ts`

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

* Fix tsdoc comment

* sligthly rewrite centering of biome and wave text in run info

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
Co-authored-by: Moka <millennium.stitcher@gmail.com>
2024-12-01 19:48:43 +01:00
Daniel Pochert
fad29ffc51
[P1 Bug] Prevent crash from missing pokemon sprite (#4821)
* catch Sprite.play() errors in egg hatch phase

* catch more Sprite.play() errors causing crashes if sprite missing

* Add changes suggested by PigeonBar

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2024-12-01 19:07:48 +01:00
Moka
37b8c337e1
[UI] Add error message for too many eggs in starter UI (#4317)
* [qol] add missing error messages in starter UI

* remove locale change

* revert empty party message change

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-12-01 18:58:44 +01:00
AJ Fontaine
7b06314940
[Bug] Fix fusions learning moves of wrong component mon on evolution (#4921)
* Fix fusions learning moves of wrong component mon on evolution

* Apply suggestions from code review

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

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2024-12-01 17:38:16 +01:00
AJ Fontaine
9ce4d5eeca
[Balance] Remove candy friendship loss from fainting (#4953)
* Remove candy friendship loss from fainting

* Apply Moka suggestions

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

* Fix starterAmount using friendship instead of adjusted amount

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2024-12-01 17:21:40 +01:00
Mumble
cef2f2adf7
[Ability] Fully implement Sheer Force (#4890)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Added checks for Sheer Force interactions currently in the code.

* Test for Relic Song interaction

* Test for Shell Bell interaction

* Created new Modifier class MoveEffectModifier

* Applied new modifier class.

* Revert "Applied new modifier class."

This reverts commit 222bc8d428.

* Revert "Created new Modifier class MoveEffectModifier"

This reverts commit 0e57ed03ff.

* Added checks for Shell Bell, Scope Lens, Wide Lens, Leek, and Golden Punch

* Fixing function calls.

* Fixed getSecondaryChanceMultiplier to just look at sheer force.

* Rewrote old Sheer Force tests in accordance to current testing standards.

* Resetting modifiers.ts

* Update src/data/pokemon-forms.ts

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* Moved getSecondaryChanceMultiplier to FlinchChanceModifier and revised Serene Grace tests

* Adding an additional override to prevent test failures.

* Removed Serene Grace factor from modifier.

* Added forgotten conditional.

* Added comment

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
2024-11-30 18:40:05 -08:00
Mumble
d6854c4969
[Tests] Enemy Held Item overrides are now applied after generateEnemyModifiers() (#4922)
* Moved overrideModifiers and overrideHeldItems to after generateEnemyModifiers

* Removed functions from scene

* Fixed the test. Thank you pigeonbar.
2024-11-30 16:09:34 -08:00
Moka
38d7a26053
[Sprite][Bug][ME] Fix ME Intro visuals for shinies and other shiny related fixes (#4827)
* [ME] Fix GTS Wonder Trade shiny not giving luck

* [ME] Shiny Magikarp from Pokemon Salesman can have any variant

* [ME] Shiny lock MEs with custom or special sprites

* [ME] GTS shows shiny sparkle for received Pokemon

* [ME] Shiny lock 'Slumbering Snorlax' and 'The Strong Stuff'

* [ME] Dancing Lessson: show shiny sparkle for Oricorio in intro

* [ME] Show shiny sparkles for Pokemon in ME intro

* fix tests

* Ensure shiny sparkle animation is initialized before playing it (Fixes #3924)

* make loading variant assets cleaner

* cleanup EnemyPokemon shiny initialization

* test fixes and final cleanup

* Make 'getSpeciesFilterRandomPartyMemberFunc' more readable

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-30 16:08:53 -08:00
innerthunder
80555be22c
Fix Post-Summon abilities not applying after switch prompt (#4908) 2024-11-30 16:07:01 -08:00
geeilhan
d5146a57b9
[Bug] Fix Lingering Arena Trap if Pokemon Switches Out (#4755)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* [P2 BUG] Fixed Lingering Arena Trap if Pokemon Switches Out (#3713)

* added switchOutStatus for all relevant moves

* Added Lingering Arena Trap Fix for Mystery Encounters

* Removing Redundant switchOutStatus Sets

* added automated test case to arena trap test

* Update src/field/pokemon.ts

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

* Update src/test/abilities/arena_trap.test.ts

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

* Apply suggestions from code review

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

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2024-11-30 13:08:32 -08:00
muscode
5fc41dfd16
[Bug] Fix Wimp Out/EE Trainer Battle causing enemy stack with multi hit (#4935)
* added fix for wimp out stack

* Replace `integer` with `number`

* Apply suggestions from code review

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* Update imports

* Update `if` check

* Modify `if` check conditions

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
2024-11-30 13:05:55 -08:00
muscode
5af2bcd5ec
[Bug] Prevent battle skip with Wimp Out (#4931)
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Mumble <171087428+frutescens@users.noreply.github.com>
Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2024-11-30 11:44:06 -08:00
star-krieg
d1294caeb6
[Balance] Candy friendship changes (#4947)
Changes:

- Increase default value for friendship gain from winning a battle (from 2 to 3)
- Increase Classic candy friendship multiplier (from 2 to 3)
- Increase Rare Candy friendship gain (from 5 to 6)
- Decrease value for friendship decrease from losing a battle (from 10 to 5)
- Update Candy friendship thresholds for getting candy for some starter costs.
- Change Soothe Bell from Rogue to Great (Weight: 2 in Great)
- Adjust Map weight to account for change (Weight: 1 to 2)
- Clowning around ME: When shuffling items, soothe bells will get replaced by a random Ultra Tier item
- Clowning around ME: When shuffling items, no item will get replaced by a Soothe Bell

Commit history: 

* Candy friendship changes

Update default value for friendship gain from battle and adjust Soothe Bell tier to Great

* Update modifier-type.ts

* Update friendship constants

* Clowning around encounter no longer consider soothe bell rogue tier

* Expert Breeder ME test will no longer fail if candy gain per battle is changed

---------

Co-authored-by: Starkrieg <starkieg.art@gmail.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
Co-authored-by: Moka <millennium.stitcher@gmail.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-30 20:28:29 +01:00
NightKev
eef0183761
[Bug] Stakeout should trigger if the enemy switches with U-Turn/etc (#4918)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-11-30 02:28:31 -08:00
Amani H.
cd6cee860a
[Bug] Fix Eviolite Weight Condition (#3681)
* [Bug] Fix Eviolite Weight Condition

* Break Up Conditions for Legibility

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-30 02:07:19 -08:00
PrabbyDD
b70bf0f4aa
[Bug] Fix for Octolock bypasses Ghost Invulnerability to lower Stats (#4923)
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
2024-11-30 02:06:09 -08:00
Brad Parbs
4d75d902d8
[Fix] Replace hardcoded party size limit with constant PLAYER_PARTY_MAX_SIZE (#4943) 2024-11-30 11:05:07 +01:00
Riley JM Young
75a50be3ce
[UI/UX] Added the (+) icon for newly non-shiny pokemon (#4920)
Will only show the (+) icon if you catch a non-shiny, have caught a shiny of that species before, and have not caught a non-shiny before.

Removed magic numbers from new non-shiny check

Co-authored-by: Riley Young <rileyyoung17@gmail.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-30 01:51:23 -08:00
Moka
5cc8013341
[UI/UX][QoL] Ask confirmation before disabling touchpad controls in settings (#4949)
* [UI] Ask Confirmation before disabling touch controls

* show a message when asking for confirmation in settings

* small cleanup

* change settings message box to display 2 lines with word wrap
2024-11-30 01:48:46 -08:00
PigeonBar
75af359154
[Bug][Beta] Fix phazing moves forcing switches into fainted/ineligible Pokemon (#4951) 2024-11-30 01:48:20 -08:00
Bertie690
5fed690187
[Bug] Fixed Super Fang interaction with Multi Lens (#4914)
Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-30 01:47:47 -08:00
PigeonBar
3bf2059aaf
[Balance] Safeguard to prevent Paradox Pokemon spawning in ME's (#4915)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-11-29 22:02:29 -08:00
Madmadness65
5992564842 Hotfix Forest BGM loop point
It sounds less jarring now, loops a couple seconds earlier.
2024-11-29 20:07:31 -06:00
AJ Fontaine
6733d81d11
[UI/UX] Pass egg hatch count to egg skip prompt (#4913) 2024-11-29 17:59:43 -08:00
Madmadness65
34cb234159
[Audio] Replace Forest track with custom BGM by Andr06 (#4924) 2024-11-29 17:57:12 -08:00
NightKev
a91d420eb4
[Test] Fix flaky Shell Side Arm test (#4952) 2024-11-29 17:31:06 -08:00
NightKev
9bc046fd64
[Bug] Honey Gather and Pickup will only activate if the battle was won (#4903)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Honey Gather and Pickup will only activate if the battle was won

* Add tests for Honey Gather

* Moves `highestEndlessWave` and `battles` stats outside of victory condition
2024-11-29 13:29:54 -08:00
Moka
4d341bf1fd
[Sprite] Add fixed Skorupi and Parasect front sprites (#4944)
* [sprite] add fixed Parasect front sprite by Kieran

* [sprite] add fixed Skorupi front sprite by Kieran

* [sprite] fix shiny skorupi fusions
2024-11-29 13:25:50 -08:00
muscode
6725164918
[Bug] Fixed First Turn Move + Wimp Out interaction (#4928)
* fix first turn move + wimpoout

* Add comment about edge case issue

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-29 13:23:55 -08:00
Ethan
de0d97739e
[Move] Implement True Force Switch (Roar, Whirlwind, Circle Throw, Dragon Tail) (#4881)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Force switch implemenation

* Fix conditionals checking `SwitchType`

Use `prependToPhase()` instead of `unshiftPhase()`

* Update comments slightly, replace `||` chain with `.includes()`

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-28 22:43:12 -08:00
Moka
48dc5d0ee7
[Balance] 'Breeders in Space' cheevo unlocks for normal and expert breeders (#4911)
* 'Breeders in Space' cheevo unlocks for normal and expert breeders

* Reduce breeder in space achievement points
2024-11-28 17:21:25 -08:00
NightKev
03b073f21f
[Bug] Analytic should only increase damage if the user moves last (#4917)
* Analytic only increases damage if the user moves last

* Return `isNullOrUndefined()` instead of `if` chain

---------

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
2024-11-28 17:20:54 -08:00
NightKev
2b64ef6fc9
Mark Rage Fist as partial in line with similar moves/abilities (#4894) 2024-11-28 17:17:18 -08:00
innerthunder
c86b6352bc
Remove Supersweet Syrup's once-per-battle condition (#4906)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-11-27 23:53:37 -08:00
Mumble
a7fa593f79
[Misc] Append .prsv to data recovery file names to prevent user confusion (#4946)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-11-27 18:04:39 -08:00
Frederico Santos
8f053ea16f
[Feature] Add save download functionality with JSZip integration (#4945) 2024-11-28 02:01:48 +01:00
NightKev
4c8a18690e
[Misc] Rename DamagePhase to DamageAnimPhase (#4880)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
* Rename `DamagePhase` to `DamageAnimPhase`

* Fix unreliable Speed Boost test
2024-11-25 14:15:39 -08:00
Tempoanon
bba5a87392
Add Kieran to art credits for Starmobiles (#4939) 2024-11-25 15:49:58 -06:00
chaosgrimmon
6442b8345f
[Sprite] Index spritesheets to load faster (#4907)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
Reduces the size of files significantly by changing the .png encoding format.
2024-11-18 21:46:33 -05:00
PigeonBar
2d6dfc45a0
[Documentation] Remove obsolete .edgeCase() from Gulp Missile (#4909) 2024-11-18 21:44:49 -05:00
NightKev
6eed6c24c2
[GitHub] Overhaul GitHub pull request template (#4895)
Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com>
Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2024-11-18 17:52:54 -08:00
Blitzy
b293797c99
[Balance] Make Intrepid Sword / Dauntless Shield their Generation 8 Implementation (#4902) 2024-11-18 17:47:11 -08:00
NightKev
c584dfafb7
[Balance] Remove reduced weight for regional species from egg pulls (#4882) 2024-11-18 17:46:52 -08:00
NightKev
a86afa6725
Merge hotfixes from main to beta (1.2.2) (#4912)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-11-18 14:32:51 -08:00
Moka
0c920ba195
[Hotfix] Prevent more Future Sight crash with new catches (#4910)
Some checks failed
Deploy Main / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Github Pages / Github Pages (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
2024-11-18 19:41:24 +01:00
NightKev
dd904fe782
[Hotfix] Prevent crash if enemy Future Sight user is caught (#4905)
Some checks are pending
Deploy Main / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Github Pages / Github Pages (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-11-17 18:08:00 -08:00
Frederico Santos
89a3edba1c
Merge pull request #4897 from pagefaultgames/beta
Some checks are pending
Deploy Main / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Github Pages / Github Pages (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Beta -> Main 1.2.0 update
2024-11-17 23:34:07 +00:00
Moka
33d8db73ef
[P1] Fix crash caused by removing arena tags on a new catch (#4888)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-11-17 16:35:14 -05:00
Mumble
e825e308f9
[Test] Update wimp out test and comment (#4900)
* Changed conditional to actually consider the wave index.

* Added PigeonBar's test

* Added check for MEs + Documentation

* Apply suggestions from code review

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
2024-11-17 16:22:11 -05:00
Mumble
6b58d51ea2
Changed conditional to actually consider the wave index. (#4899)
Co-authored-by: frutescens <info@laptop>
2024-11-17 20:19:23 +00:00
Amani H.
1867ac4a9e
[Dev] Minor Version Migration Tweaks (#4727)
* [P3] Prevent Unintended ME Migration Application

* Change Patch Value from 4 to 5

* Bump Game Version

* Fix Imports, Use `isNullOrUndefined`
2024-11-17 17:34:41 +00:00
PigeonBar
07f08877c1
[Balance] Multi Lens damage reduction on fixed-damage moves (#4896) 2024-11-17 17:16:54 +00:00
Moka
ae8efeedf8
[UI] Make ME text legible when using the legacy UI theme (#4847)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-11-16 23:34:14 +00:00
Daniel Pochert
7dc4210f71
[Bug] fix training session encounter not applying nature correctly (#4801)
* fix training session encounter not applying nature correctly

* implement pokemon.setCustomNature + nature unlock utility method(s)

* update doc

---------

Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2024-11-16 23:33:14 +00:00
Mumble
c2afac8b02
[Bug] Moved code preventing MBH's transfer to post modifier generation (#4858)
* Moved code preventing MBH's transfer to after enemy modifiers were generated.

* Removed unnecessary !

* Removed unnecessary ?

* Created a new enum and functions for retrieving final bosses.

* Moved isBattleClassicFinalBoss to game-mode.ts and reverted battle.ts

* Preventing item transfer with tryTransferModifier instead

* Added filtering to modifier-retrieve methods.

* Revised logic in tryTransferHeldItemModifier

* Adding what works to the game even though it's not the best.

* Added comments

* Removing past changes to files.

* Added check for Classic Final Boss.

---------

Co-authored-by: frutescens <info@laptop>
2024-11-16 23:32:05 +00:00
Amani H.
c22b48f903
[P1] Fix System Data Conversion Failure 3 (#4866)
* [P1] Fix System Data Conversion Failure 3

* Use `isNullOrUndefined`, Clean Up Imports

* fix pre candy update save data migration for candy

* fix pre candy update save data migration for candy part 2...

---------

Co-authored-by: Moka <millennium.stitcher@gmail.com>
2024-11-16 23:31:28 +00:00
Mumble
4aff2ffa1d
[Dev] Sessions will now sync with the server at the start of every 5 waves (#4808)
* Replaced conditional with `true` so that sync-to-server occurs at the start of every wave.

* Update src/phases/encounter-phase.ts

Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt>

* Fixed errors from previous commit.

* Revised condition to include the first wave of a run.

* Apply suggestions from code review

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

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: Frederico Santos <frederico.f.santos@tecnico.ulisboa.pt>
Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2024-11-16 23:30:47 +00:00
Moka
77b94bf45d
bump version to 1.2.0 and update locale submodule to latest commit (#4884)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-11-16 16:46:02 +00:00
innerthunder
360a897ed2
[Balance] Endure Tokens only endure one hit (#4875)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Endure Tokens only endure one hit

* Add tests for Endure

* Update docs

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-15 21:11:46 +01:00
AJ Fontaine
413f2b80c8
[Balance] Increase Gimmighoul's evo counter more with Big Nugget/Relic Gold (#4856)
* Increase Gimmighoul's evo counter more with Big Nugget/Relic Gold

* Update src/modifier/modifier.ts

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

---------

Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2024-11-15 20:26:58 +01:00
AJ Fontaine
5e7d44abfd
[Balance] Fix Liquidation, Double-Edge, Body Press compatibility (#4879) 2024-11-15 14:07:02 -05:00
Mumble
c535e928d8
[Beta][QoL] Improved cursor memory for target selection in Doubles (#4849)
* Added more intelligent cursor memory for target selection in Doubles

* Added documentation

* Fixed variable name.

* Apply suggestions from code review

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

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2024-11-15 12:45:21 -05:00
Mumble
eb3c0d731a
[P2] Lunar Blessing / Jungle Healing now heal Freeze (#4877)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Added Freeze to statuses healed by Jungle Healing / Lunar Blessing

* Fixed up documentation.

---------

Co-authored-by: frutescens <info@laptop>
2024-11-15 12:17:46 -05:00
pom-eranian
5ca1fd5cfd
[Sprite] Set default fps to 10 instead of 12 on pokemon animations (#4842)
* Set default fps to 10 instead of 12 for pokemon sprites

* [Sprite] Set pokemon animation framerate to 10 where assigned
2024-11-15 11:58:50 -05:00
AJ Fontaine
ef7d860166
[Balance] Remove from trainers: Pika/Eevee forms before 30, BB Greninja, Rival starter HA (#4863)
* Remove Pika/Eevee forms from Trainers before wave 30, and BB Gren

* Fix `egg` test

* Ban hidden ability from Rival starter

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-15 11:57:02 -05:00
innerthunder
9273b4930d
[Beta][P1] Fix crash when resetting Commanded Dondozo before Trainer battles (#4873)
* Add failsafe to Commander remove anim

* Commanded tag saves Tatsu form on reload
2024-11-15 11:56:05 -05:00
NightKev
8326e3556b
Remove .edgeCase() from fully implemented moves (#4876)
This includes Sunsteel Strike, Moongeist Beam and Photon Geyser
2024-11-15 08:29:52 -08:00
Mumble
6dec84e39c
[Balance] No more double 50x bosses in Endless + cleaning up RNG (#4862)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Added double battle exclusion to Endless bosses.

* Brought Endure token RNG in line with game RNG formatting.

* Corrected incorrect modulo condition in isEndlessBoss

* Moved new doubles conditional to be above overrides.

* Fixed bad RNG calls for Covet and Thief too.

* Updated unburden test.

* Revert "Updated unburden test."

This reverts commit 01788d40c2.

* Revert "Fixed bad RNG calls for Covet and Thief too."

This reverts commit c7fcfd195d.

---------

Co-authored-by: frutescens <info@laptop>
2024-11-14 21:13:23 -08:00
PigeonBar
b1138c1d70
[P2][Beta] Freeze-dry Re-implementation (#4874) 2024-11-14 21:07:19 -08:00
Moka
f778bd5877
Prevent crash from null dexData attributes (#4871)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-11-14 23:01:04 +00:00
Mumble
58912db8f1
[P2] Telekinesis now sets FloatingTag to 3 turns instead of 5 turns (#4869)
Co-authored-by: frutescens <info@laptop>
2024-11-14 16:16:05 -05:00
PigeonBar
640ac23741
[Dev] Add overrides for alternating between single and double battles (#4833)
* [Dev] Add overrides for alternating between single and double battles

* PR feedback

* Add type `DoubleType`

* Fixed Gastro Acid test using `game.override.battleType(null)`

* Changed new type name to `SingleOrDoubleType`

* `SingleOrDoubleType` is now `BattleStyle`

* Update src/test/utils/helpers/overridesHelper.ts

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2024-11-14 20:40:01 +01:00
Mumble
d0d9eb78da
Set the IVs of default starters to 15. (#4861)
Co-authored-by: frutescens <info@laptop>
2024-11-14 11:35:13 -08:00
geeilhan
0c521bbe08
[Move] Implement Freeze Dry type-changed interactions (#4840)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
* Full implementation of freeze-dry including edge cases such as Normalize and Electrify plus tests

* Update comments

* renamed WaterSuperEffectTypeMultiplierAttr to FreezeDryAttr

* Added test case for freeze dry during inverse battles

* cleaned up code making it more general

* Added some more documentation

* implementing reviewed changes

* used getMoveType() instead of move.type

* added additional test cases to freeze dry

* Revert "used getMoveType() instead of move.type"

This reverts commit 03445dfab4.

* added reviewed changes without changing public/locales

---------

Co-authored-by: ga27lok <geeil.han@tum.de>
2024-11-13 10:41:39 -05:00
muscode
162eea500d
Fixed wild form changes messages, and form-changed Cramorant crashing the game when both sides faint at the same time (#4859)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-11-13 14:28:22 +08:00
innerthunder
e45cb42f7e
[Balance] Disable King's Rock for moves that can already flinch (#4860) 2024-11-12 18:42:47 -08:00
NightKev
b6b756a162
[P2] Fix issue with Pokemon not evolving until the next floor and clean up LevelUpPhase (#4854)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-11-12 06:44:28 -05:00
PigeonBar
6f3fd0f138
[Beta][P3] Fix failed charge moves not displaying failed text (#4853) 2024-11-12 06:29:37 -05:00
innerthunder
8e26db944d
[Balance][Beta] Revert Spread Move Restriction on Multi-Lens (#4851)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Multi-Lens now applies to spread moves

* Fix Multi-Lens applying to both damage and power
2024-11-11 21:13:37 -08:00
PigeonBar
4802f512ff
[P1][Beta] Fix softlock when losing a run on local build (#4846)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-11-11 15:22:27 -08:00
innerthunder
cebedd220b
[Balance] Rework Multi-Lens (#4831)
* Rework Multi-Lens

* Multi-Lens integration tests

* Apply suggestions from code review

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

* Fix obsolete tests related to Multi-Lens

* Fix flaky unburden tests

* maybe fix flaky ceaseless edge test?

* Fixed Multi-Lens apply comment

* Fix ceaseless edge test for real this time

* Update locales

* Another locale update

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-11 14:56:16 -08:00
Mumble
e5e3926176
[beta] Fix MovePhase not ending properly. (#4848)
Co-authored-by: frutescens <info@laptop>
2024-11-11 21:13:15 +01:00
Mumble
6feb63484c
[P3] Added failIfSingleBattle condtion to Doubles-only moves and display failure message when used in singles (#4839)
* Added failIfSingleBattle condtion to Helping Hand

* Added failIfSingleBattle conditions to Doubles-Only moves

* Adjusted canMove failure condition.

* Updated moves that failIfSingleBattle

* Fixed condtional.

---------

Co-authored-by: frutescens <info@laptop>
2024-11-11 12:29:20 -05:00
NightKev
6799594bbb
[Test] Update Zen Mode test (#4845)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-11-11 02:21:06 -05:00
PigeonBar
efa9f119a0
[Beta][P3] Fix shiny Pokemon being displayed before shiny colours are loaded (#4843) 2024-11-11 02:18:57 -05:00
chaosgrimmon
f2a2281ff1
[Sprite] Implement female icon assets for Meganium and Doduo + Torchic lines (#4841)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* [Sprite] Implement more female icons

* [Sprite] Add female Doduo/Dodrio icons

* [Sprite] Add female Meganium icons

* [Sprite] Add female Torchic line icons

* [Sprite] Add female Meganium icons

* [Sprite] Add female Torchic line icons

Identical to male counterpart icons
2024-11-10 14:37:21 -05:00
PigeonBar
63ffab027d
[Beta][P2] Several Unburden bug fixes (#4820)
* [P2][Beta] Several Unburden bug fixes

* Unburden test adjustments

* Some further test cleanup

* Add suggested `.bypassFaint()` to Unburden

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-10 14:21:29 -05:00
NightKev
2968059814
[P1] Transform and Imposter will now fail when either Pokemon is fused (#4824)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Transform and Imposter will now fail when either Pokemon is fused

* Prevent Ditto from being randomly generated as part of a fusion
2024-11-10 00:39:05 -05:00
Mumble
b3a94e6a6b
[Telemetry][Misc] Client-Side changes to log run results at the end of runs (#4834)
* Added new telemetry-related parameters

* Update test with new parameters.

* Removing extra parameters.

* Cat in front of keyboar d sorry

* Changed variable name to isVictory.

* Apply suggestions from code review

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

* Thank you Torranx

* Condensed if-else pair to else if statement

* Update src/phases/game-over-phase.ts

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

* inhale... exhale... corrected variable name to pass linter

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com>
2024-11-10 00:37:09 -05:00
Moka
44a68a91ba
[P1] Fix crash when newly aquired Pokemon are sent in battle (#4835) 2024-11-10 00:35:49 -05:00
Payton Rogers
265b3cb938
[P3] Fix visual bug with level text remaining the same when pokemon levels are reduced in weird dream ME (#4837) 2024-11-10 00:35:16 -05:00
damocleas
198ac2431d
Undo Event modifier-type.ts item table changes (#4836)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-11-09 14:26:55 -08:00
PigeonBar
2bf8acea06
[Beta][P2] Fix Sketch failing to sketch moves that call other moves virtually (#4823)
* [P2][Beta] Fix Sketch failing to sketch Metronome et al

* Suggested changes to `getLastXMoves()`

* Renamed turnCount to moveCount
2024-11-09 13:15:24 -05:00
innerthunder
a763cd173d
[Beta][P1-3] Fix Commander implementation bugs (#4826) 2024-11-09 13:14:11 -05:00
innerthunder
329e43ad48
[P2] Removed incorrect calls to resetBattleData on switchout (#4828) 2024-11-09 13:13:12 -05:00
NightKev
c54d21c313
[Test] Fix flaky Wimp Out test (#4830) 2024-11-09 13:12:22 -05:00
AJ Fontaine
c6cc187c96
[Balance] Modify potion and ether weight funcs (#4829)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Adjust for low HP mons
2024-11-09 01:10:49 -08:00
AJ Fontaine
de4ec5e1cb
[Feature] [Item] Add Catching Charm item (#4811)
* Add catching charm item

* Add Catching Charm item

* Disable catching charm in item pool when dex isn't full enough

* Replace catching charm icon

---------

Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com>
2024-11-09 14:38:45 +08:00
NightKev
00f7fd47df
[Refactor] Remove unnecessary re-exports (#4818)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Remove unnecessary re-exports

* Move `Type` enum to `src/enums/type.ts`

* Remove import style change from `modifier-type.ts`
2024-11-08 17:44:34 -05:00
Mumble
58d40b905a
[Bug] Fixing Encore's interactions with other Move Restriction moves (#4805)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Converted EncoreTag into a MoveRestrictionBattlerTag

* Wrote test and added documentation

* Added documentation describing EncoreTag as a whole

* Added PRE_MOVE lapse code to handle early tag expiration from PP-less encored move

* Replaced PRE_MOVE with CUSTOM for lapsing Encore in situations where the encored move has 0 PP

* Add encore tests

* fix overrides

* Apply suggestions from code review

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

* Update command-phase.ts

* Addressed failing eslint test

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: innerthunder <brandonerickson98@gmail.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-08 09:35:33 -08:00
innerthunder
625b98a6fe
[Move][Refactor] Create Move.getPriority + Fully Implement Upper Hand (#4789)
* Fully Implement Upper Hand

* doc for UpperHandCondition

* New Upper Hand tests + some nit fixes

* Use Fake Out over mocked Tackle in test
2024-11-08 10:50:23 -05:00
Mumble
4821df68f2
[P1] Prevents crash from using Sketch against a lost turn (#4806)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Added check to make sure that Sketch does not copy a failed move.

* Added check for Struggle.

* Added a revised check.

* Added test + change to valid move finding conditional.

* Made revision to .find target

* Reverting previous commit, whoops.

* Add moveset checks to Sketch tests

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-07 23:10:46 -05:00
Daniel Pochert
aa2c794910
[Balance/Bug] Boss segments properly heal (#4819) 2024-11-07 23:09:25 -05:00
Moka
2b91d9d259
[Dev] Remove logging for api requests outside of dev (#4804) 2024-11-07 15:30:49 -08:00
AJ Fontaine
b2fdb9fcd1
[P2] Fix Cosmoem requirng an evolution level (#4812)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-11-07 16:33:25 -05:00
Frederico Santos
5601bb14ec Locales update 2024-11-07 21:21:30 +00:00
Mumble
4c5b83612b
[P2] END biome transition now properly uses seeded RNG (#4809)
Co-authored-by: frutescens <info@laptop>
2024-11-07 10:36:25 -05:00
AJ Fontaine
1f6dab069d
[Feature][Balance] Add critical captures, update shake probability to match gen 6 (#4791)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Change shake probability to match Gen 6

* Add critical captures, update shake probability to gen 6

* Change IntegerHolder to NumberHolder

* Adjust dex count thresholds for multiplier

* Disable critical captures in fresh start runs

* Skip first shake check for critical captures

* Move shake check for crit captures to after first shake

* Use less insane catch formula

* Integer to number in bounceanim signature

* Use max crit catch dex multiplier in daily runs

* Adjust crit capture animation

---------

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-06 18:25:27 -08:00
ThePsychedelicSeal
9dae28f264
[Misc] Adding Type, Current HP, Max HP, & Status to updateGameInfo() (#4756)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Adding to window.gameInfo

Added
type -> not working
currentHP -> not working
maxHP
status

* Adding to updateGameInfo()

* Update pokemon.ts

* Modifying battle-scene.ts

Added code to get Form and Tera Type
Typo fixed in pokemon.ts

* Output type names/etc instead of numbers

---------

Co-authored-by: ThePsychedelicSeal <trevorlrichfield@gmail.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
2024-11-06 11:42:39 -05:00
Mumble
6b7efb444b
[Ability] Fully implement Synchronize (#4785)
Co-authored-by: frutescens <info@laptop>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-06 11:29:24 -05:00
Mumble
4f733796c5
[Move] Implement Grudge (#4794)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* some work

* slay dnr

* Fixed up move mechanics

* bahhh

* yawn

* updated lapse type to correctness

* Test + documentation

* yattt

* Remove some redundant code

* Apply suggestions from code review

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* Update battler-tags.ts

* Fix `PokemonAnimPhase`

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
2024-11-05 21:32:07 -05:00
innerthunder
eb32545772
[Balance][Beta] Commander now increases double battle chance (#4803)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-11-05 11:23:22 -08:00
Moka
b79b643b31
[P2][ME] Fix GTS not getting proper item tier when trading items (#4802) 2024-11-05 12:42:04 -05:00
geeilhan
198d3ce2a6
[P2] Fixing Incorrect Freeze Dry Interaction With Soaked Wonder Guard Target (#4798)
* [Bug] fixed interaction between freeze dry and soaked wonder guard target

* added automated test for freeze dry interaction with soaked wonder guard target

* using parameter instead of function to get typeMultiplier
2024-11-05 12:37:47 -05:00
innerthunder
6fd3ba284c
[Move][Ability] Implement Commander and Order Up (#4670)
* Implement Order Up (mostly untested)

* Commander unit tests + bug fixes

* Implement Order Up (misnamed the other commit...)

* Order Up unit tests

* applying Temp's suggestions + other bugfixes

* add TODO comment

* Reviver Seed reapplies Commander

* ESLint woes

* Some animation fixes

* Update locales

* Order Up now uses attr option

* Prevent semi-invulnerability lapsing out while Commanding

* semi-invulnerability test

* Add `edgeCase`
2024-11-05 12:35:43 -05:00
Adrian T.
88789c685e
[Documentation] Flag Gulp Missile with edge case (#4800) 2024-11-05 11:08:55 -05:00
PigeonBar
543a97076b
[P1][Beta] Fix FormChangePhase being broken by EvolutionPhase refactor (#4795)
* [P1][Beta] Fix FormChangePhase being broken by EvolutionPhase refactor

* Apply suggested changes to added test
2024-11-05 15:19:20 +01:00
AJ Fontaine
13841765f1
[Dev] Update test save with everything unlocked (#4137)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Add test save with all egg moves unlocked

* Move to everything.prsv

---------

Co-authored-by: Lugiad <adrien.grivel@hotmail.fr>
Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2024-11-04 21:33:15 -05:00
NightKev
ab6d15ee8a
[Move] Improve Future Sight & Doom Desire (still partial) (#4545)
* Fix behavior of Future Sight and Doom Desire

Add test for Future Sight

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

* Prevent crash if Future Sight target is missing

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

* Add `partial()` comments, update `DelayedAttackAttr` return

---------

Co-authored-by: Gianluca Fuoco <gianluca_1227@hotmail.com>
Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com>
2024-11-04 21:31:40 -05:00
Moka
433d4b4fc9
[P3][UI][QoL] Fix tooltips going out of screen on mobile & other improvements (#4792)
* [ui] Fix tooltip placement when using touchscreen

* [ui] make candy friendship tooltip hitbox bigger
2024-11-04 20:24:17 -05:00
flx-sta
7a0c88e661
[Refactor] Pokerogue API client (#4583)
* start migrating Utils.apiFetch to api class

* move dailyranking to api

* use api in title-ui-handler

* remove: Utils.apiFetch

* migrate `updateSystemSavedata` to api

* migrate clear session savedata to api

* migrate updateAllSavedata to api

* migrate `updateSessionSavedata` to api

* rename `api` to `pokerogue-api`

* migrate unlink discord to pokerogue-api

* migrate unlink google to pokerogue-api

* update pokerogue-api login

* migrate register account to pokerogue-api

* remove Utils.apiPost

* reset overrides.ts

* chore: cleanup

* fix env.development

* fix circular dependencies with api

* fix gamedata verify missing await

* fix daily api calls in daily-run-scorebard

* fix discord-link request body being empty

there was a double `toUrlSearchParams()` call involved

* add pokerogue-api test coverge

* add test-utils `getApiBaseUrl()` method

* add pokerogue-admin-api test coverage

* add pokerogue-account-api test coverage

* add pokerogue-daily-api test coverage

* add pokerogue-savedata-api test coverage

* fix some test describes

* add pokerogue-session-savedata-api test coverage

* add pokerogue-system-savedata-api test coverage

* fix tests

* fix tryExportData

thanks @MokaStitcher

* chore: fix menu-ui-handlers.ts

* fix admin-ui-handler (types)

* extend test-coverage for admin-api

* remove outdated code

* skip some clowning-around-encounter tests if events are active

this is not a permanent solution

* Update src/system/game-data.ts

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

* Revert "skip some clowning-around-encounter tests if events are active"

This reverts commit a97dafe8b2.

* mark `localServerUrl` and `apiUrl` as deprecated

in `utils.ts`

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
2024-11-04 15:57:21 -05:00
NightKev
a70f0860e1
[Beta Bug] Enemy pokemon shouldn't get unimplemented moves (#4787)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-11-03 23:34:26 -05:00
Adrian T.
618dfbd324
[Refactor] Reduce nesting in doEvolution() (#4786)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com>
2024-11-03 22:40:24 -05:00
Mumble
3a767ed38a
[Refactor] Another Audio clean up (#4077)
* Cleaned up how cry keys were retrieved

* Legendary Pokemon Changes + Cry Cleanup

* Spelling mistake

* Fixed settings.

* correcting typedocs

* eslint

* eslint cleanup

* music pref

* gdfafa

* Music

* Apply suggestions from code review

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

* Update src/battle.ts

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

* Update src/battle.ts

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

* fixed default

* Apply suggestions from code review

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

* Added changes

* Update src/battle-scene.ts

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

* Fix variable usage

* Fix `getFormSpriteKey()` and `.concat()` usage

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

* asdsafafaf

* i need to do the dishes ughhh

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com>
Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com>
2024-11-03 22:31:07 -05:00
NightKev
770f388c45
[Refactor] Miscellaneous code cleanup (#4596)
* Miscellaneous code cleanup:

- Update `overrides.ts` imports

- Add missing comment and `;` in `eslint.config.js`

- `field/pokemon.ts`:

Rename `generateVariant` to `generateShinyVariant`

Mark some functions as `public`/etc

Update various tsdocs/comments, add tsdocs to `isOfType`

Turn an unreadable 450+ character line into a
readable block of code

- `utils.ts`:

Remove unused function `randSeedEasedWeightedItem`

Mark `IntegerHolder` and `FixedInt` as deprecated

Update some tsdocs/comments

* Convert to inline anonymous function

* Fix indentation in `move-effect-phase.ts`

Rename `getTarget` to `getFirstTarget` for clarity

Convert namespace import to named imports

Add `public`/etc to methods

* Rename `verifyLang` to `hasAllLocalizedSprite` and update tsdoc

* update locale submodule

* Put missing `null` guards around some uses of `getUserPokemon()`

* Fix locales

* Fix Unburden test

---------

Co-authored-by: Moka <millennium.stitcher@gmail.com>
Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com>
2024-11-03 22:23:51 -05:00
Moka
62f9f6dd32
[UI] Starter Select UI no longer reloads sprite when changing nature, ability, etc (#4782)
Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com>
2024-11-03 22:04:53 -05:00
innerthunder
c3d832aaca
[Move] Fully Implement Round (#4783) 2024-11-03 21:59:55 -05:00
muscode
3f97c9e39f
[Ability] Implement Unburden (#4534)
* unburden implemented

* Used tag instead of stat changes for Unburden

* added documentation and neutralizing gas test

* accounted for unburden in getEffectiveStat

* fixed doubling speed in two places

* merge conflict resolve

* changed documentation wording, added test for stuff cheeks

* refactor unburden

* merge

* remove console logs

* Update src/data/ability.ts

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* add neut gas check

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* Added test for NeutGas user entering while unburden activated

* add spaces to tests, removed passive and [] from applyPostItemLostAbAttrs

* added line breaks after test cases

---------

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
2024-11-03 21:58:12 -05:00
muscode
1619d512cf
[Move] Implement Fairy Lock (#4736)
* inital wip

* wip set isTrapped to true and removed timedtrap

* implement fairy lock

* whitespace fix

* added documentation for tag

* added more suggested tests

* give tests breathing room

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* give tests breathing room

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* give tests breathing room

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* updated nested ternary, changed test name

---------

Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
2024-11-03 21:56:54 -05:00
NightKev
836b37f383
[Refactor] Clean up some code related to starter select UI (#4752)
* Clean up some code related to SSUI

Replace a few nested ternaries with if blocks

Remove some `undefined`s with destructuring

* Add comment, use `v === 0` instead of `!v`

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

---------

Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2024-11-03 21:55:12 -05:00
NightKev
af473ba4ff
[Refactor] Clean up various methods in battle-scene.ts and pokemon.ts (#4412)
* Update `battle-scene.ts` and `data/field/pokemon.ts`

`battle-scene.ts` changes:
- `getParty()` renamed to `getPlayerParty()` for clarity
- `getNonSwitchedXPokemon()` consolidated into `getXPokemon()`
- Some tsdocs were added/updated for
`getXParty()`, `getXField()` and `getXPokemon()`;
and those functions were explicitly marked as `public`
- Helper function `getPokemonAllowedInBattle()` added

`pokemon.ts` changes:
- `isAllowed()` renamed to `isAllowedInChallenge()` for clarity
- A redundant check for an active scene is removed in `isActive()`
- Some tsdocs were added/updated for `isFainted()`,
`isAllowedInChallenge()`, `isAllowedInBattle()` and `isActive()`;
and those functions were explicitly marked as `public`
- `isFainted()` now checks for `hp <= 0` instead of `!hp`

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>

* Backport eslint change to reduce merge conflicts

* Fix merge issues

---------

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com>
2024-11-03 21:53:52 -05:00
Tempoanon
87b7122b60
[P2] Illuminate ignores evasion (#4781) 2024-11-03 21:47:07 -05:00
NightKev
5e2dfa975a
Rename PokemonTurnData's damageDealt and currDamageDealt (#4784) 2024-11-03 14:09:28 -08:00
muscode
f0ae36de6c
[Ability] Implement Wimp Out and Emergency Exit (#4701)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* implement Wimp Out/Emergency Exit

* fixed test

* fixed weather bug

* Added nightmare interaction to Wimp Out following bug fix

* refactored and added postdamageattr

* bug fixes

* added confusion test back (skipped)

* updated applyPostDamageAbAttrs to applyPostDamage

* fix external func name

* fixed syntax inconsistency

* updated PostDamageForceSwitchAttr -> PostDamageForceSwitchAbAttr

* Modify `wimp_out.test.ts`

* remove extra comment

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

* remove extra comment

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

* Update tsdocs

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

* remove comment

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

* remove comment

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

* fix tsdocs

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

* fix tsdocs

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

* fix tsdocs

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

* fix tsdocs

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

* fix whitespace

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

* make getFailedText public

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

* make switchOutLogic public

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

* make getSwitchOutCondition public

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

* make getFailedText public

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

* make applyPostDamage public

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

* simplify if statement

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

* add public override to applyPostDamage

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

* fixed nested if issue, remove trapped tag removal

* add fix for multi hit move

* added multi-lens logic

* moved applyPostDamageAbAttrs to pokemon.damage, added check for multi lens in pokemon.apply

* added source to damageAndUpdate and applyPostDamageAbAttrs, added Parental Bond logic + test, put applyPostDamageAbAttrs back in damageAndUpdate

* simplify multi hit check

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* Minor formatting changes

* Update src/data/ability.ts

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

* moved and renamed shouldPreventSwitchOut, rewrote tests to account for U-turn changes, fix syntax error

* Move comment slightly

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
2024-11-03 01:04:20 -05:00
podar
b17b1d6e7e
[P1] Fixing crash that can occur when failing to loading variant sprites. (#4315) 2024-11-03 01:33:48 -04:00
Mumble
f16309fd06
[P2] Plus, Minus, Beads/Sword of Ruin not ignorable. Shield Dust and Armoa Veil ignorable (#4778)
Co-authored-by: frutescens <info@laptop>
2024-11-03 01:22:40 -04:00
Mumble
70ddc29e86
[Refactor] Refactor data/pokemon-species.ts (#4054)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Setting species-variables to read only

* set generations to protected

* formIndex set to protected

* quick fix

* typedocs fixes

* get / set generation

* wait

* Use get/set for formIndex too

* Fix misplaced line

* Replace a couple `!!` with default params

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Tempoanon <163687446+Tempo-anon@users.noreply.github.com>
2024-11-02 23:11:24 -04:00
Mason S
c31657d952
[Refactor] Reduced nesting in MoveEffectPhase (#3541)
* Re-structured MoveEffectPhase.run() to reduce nesting and improve readability.

* Re-structured MoveEffectPhase.run() to reduce nesting and improve readability.

* Added Substitute Implementation

* Fix indentation, tsdocs, add `public`/etc

* Prevent ENEMY_SIDE targeted moves from occurring twice in double battles

* Add `override` to `start()` and `end()`

* Minor indentation fix

---------

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-02 22:55:15 -04:00
innerthunder
1474f8cf14
[Refactor] Add options param interface for MoveEffectAttr (#4710)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Optional parameter interfaces for `MoveEffectAttr` and `StatStageChangeAttr`

* Update docs + Diamond Storm typo

* Apply suggestions from code review

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

* Make move effect trigger specification optional

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-02 13:05:33 -04:00
Mumble
1659f57262
[P2] Camouflage now considers Terrains first (#4761)
* the fix... will maybe write a test later

* ughh

* made a test

* moved aorund function

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

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

* lalal

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
2024-11-02 12:48:10 -04:00
innerthunder
80a8c659ee
[P2] Add "no switch-in" fail condition for Shed Tail and Baton Pass (#4777) 2024-11-02 12:47:08 -04:00
Moka
c2d24d6e93
[Bug] Take weight into account when getting the tier of a modifier (#4775)
* disable timed events in tests

* Take weight into account when getting the tier of modifiers

* Apply suggestions from code review

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

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
2024-11-02 11:55:22 -04:00
AJ Fontaine
8169760e1e
[Bug] Prevent wild mons fleeing with U-turn, Flip Turn, Volt Switch (#4643)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Wild mons can't flee with U-turn

* Update src/data/move.ts

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

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-11-01 21:21:45 -07:00
Mumble
684fb93e39
the fix (#4733)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
Co-authored-by: frutescens <info@laptop>
2024-10-31 22:22:26 +01:00
Lugiad
abc9264b3d
[Localization] Spanish modification form es to es-ES (#4753)
* Update and rename statuses_es.json to statuses_es-ES.json

* Rename statuses_es.png to statuses_es-ES.png

* Update and rename types_es.json to types_es-ES.json

* Rename types_es.png to types_es-ES.png

* Update i18n.ts

* Update settings.ts

* Update settings-display-ui-handler.ts

* Update starter-select-ui-handler.ts

* Update utils.ts

* Update settings-display-ui-handler.ts

* Update loading-scene.ts

* Update timed-event-manager.ts

* change remaining 'es' to 'es-ES' in various UIs

* change halloween event banner from es to es-ES

* update to latest locale commit

---------

Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2024-10-31 21:54:05 +01:00
Madmadness65
5755180279
[Audio] Replace Graveyard BGM with Firel's custom BGM (#4765)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-10-30 21:48:09 -04:00
PigeonBar
5b9dfe17ad
[P2] Fix Own Tempo Rockruff not being able to evolve (#4762)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-10-30 13:15:11 -04:00
Mumble
b3a0ca9475
[Misc] Update Donation Link (#4763)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Co-authored-by: frutescens <info@laptop>
2024-10-29 19:31:24 -07:00
PrabbyDD
15dedf06ed
[P2] No Exp Gained after Switching in a Pokemon as the Opponent Faints (#4687)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* fixing the exp bug

* fixing the exp bug

* dont think need to reset turn data there

* changing a little bit

* Update src/phases/faint-phase.ts

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

---------

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
2024-10-29 17:38:57 -04:00
PrabbyDD
afe6d2900d
[P2] Fix for Speed Boost is Activated on the Turn a Pokemon is Switched In, and When a Pokemon Fails to Escape #4353 (#4676)
* fixing speed boost for pokemon being switched in and for if failed escape

* adding unit tests

* adding failed run away test case

* adding failed run away test case modification

* refactoring solution to be more consistent with coding style

* more fixes for consistency

* more fixes for consistency

* adding new AbAttr in abiliity.ts for posterity

* removing uneccesary variables

* fixing a merge conflict
2024-10-29 17:38:33 -04:00
innerthunder
fd1aa41d09
[P2] Fix AI targeting allies with status effect moves (#4717) 2024-10-29 17:32:07 -04:00
NightKev
921d4fa18c
[P2] Chloroblast & Struggle should not recoil if the move failed (#4719)
* Chloroblast & Struggle should not recoil if no damage was dealt

* Protect against missing move entry

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

---------

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
2024-10-29 17:31:37 -04:00
AJ Fontaine
f9fe59239e
[TMs] Remove Sacred Sword, add Secret Power TM, fix Reflect compatibility (#4713) 2024-10-29 17:31:02 -04:00
Opaque02
1cbe8b1505
[P3] Fixing form name being incorrect for some evolved pokemon (#4742)
* Fixing form name being incorrect for some evolved pokemon

* Updated to include showing the root speciesId if the speciesId locale key doesn't exist
2024-10-29 17:30:20 -04:00
Blitzy
65269f935f
[Balance] Change Bouncy Bubble's Attributes (#4757)
* Change Bouncy Bubble's Healing

* Move comment to what is custom about Bouncy Bubble

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
2024-10-29 16:19:42 -04:00
NightKev
13ff80fb95
Mark Last Respects as partial (#4749) 2024-10-29 18:59:28 +01:00
Mumble
fb2d3e45d6
[Move][Ability] Fully Implement Forest's Curse / Trick Or Treat / Mimicry (#4682)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* addedType variable

* basic mimicry implementation

* eslint

* rage

* quick change

* made files

* added mimicry activation message

* test for moves done

* hahahhaha

* done? for now?

* laklhaflhasd

* Apply suggestions from code review

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

* time to start... ughhh

* reflect type

* Added new message

* Update src/field/pokemon.ts

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

* Update src/data/ability.ts

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>

* added overrides

* some checks

* removed comments

* Apply suggestions from code review

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

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
2024-10-29 10:10:37 -07:00
geeilhan
38a6bf07e3
[Bug] Fix enemy faint causing Frenzy moves to mishandle paralysis (#4680)
* [BUG] Added frenzy reset function during move phase should move be cancelled (#4227)

* Revert [P2 BUG] Fix since it does not work and is faulty

* [P2 BUG] Implemented correct frenzy Tag and Movequeue reset should frenzy move fail (#4277)

* Cleaned up Bug Fix using frenzyMissFunc

* Added automated test case for frenzy move edge case

* Improvement to frenzy move reset test case speed

* Fix test

* Add missing import

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-29 08:36:24 -07:00
AJ Fontaine
13377806ff
[Refactor] Change attack type booster names to enum (#4725)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-10-28 15:58:46 -07:00
PrabbyDD
3241332a3c
[Ability] Implementing Friend Guard (#4718)
* implementing friend guard ability

* Update src/data/ability.ts

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

* Update src/data/ability.ts

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

* Update src/data/ability.ts

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

* Update src/test/abilities/friend_guard.test.ts

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

* Update src/field/pokemon.ts

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* more tests and fixing other issues

* more tests and fixing other issues

* Update Friend Guard test with damage mocks

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
Co-authored-by: innerthunder <brandonerickson98@gmail.com>
2024-10-28 13:49:04 -07:00
Moka
fe7d156d2d
Merge pull request #4754 from pagefaultgames/main
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Main -> Beta (1.1.6)
2024-10-28 17:40:48 +01:00
innerthunder
b4cc9d7892
[Hotfix] Fix crash when Mist would block a stat drop (#4746)
Some checks failed
Deploy Main / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Github Pages / Github Pages (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
* Fix crash when Mist would block a stat drop

* Bump version

* Bump version (again)
2024-10-28 14:02:10 +01:00
pom-eranian
5797f265a4
[Sprite][hotfix] Fixed cropping on 658 static greninja and ash greninja (#4743)
Some checks are pending
Deploy Main / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Github Pages / Github Pages (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* [Sprite][hotfix] Fixed cropping on static greninja and ash greninja

* bump version number
2024-10-28 02:32:36 +00:00
chaosgrimmon
33f5f4c33b
[Sprite] Hotfix cut off Binacle sprite (#4741)
Some checks are pending
Deploy Main / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Github Pages / Github Pages (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Trim 688.json duration

* Trim 688.json duration

* Fix cut off Binacle back

* Fix cut off shiny Binacle back

* Bump version

* Bump version

* Revert cutting off hair

* Revert cutting off hair

* Remove trailing comma

* Remove trailing comma
2024-10-27 23:23:09 +01:00
Moka
41380b39b9
[Hotfix] Fix manifest getting loaded before the game is initialized (#4739)
* Fix manifest being used before the game is initialized

* bump game version

* make manifest fix more future proof

* Revert "make manifest fix more future proof"

This reverts commit 32591b35d0.

* fix locales path for offline builds
2024-10-27 21:32:30 +01:00
PigeonBar
dfb42e44a6
[Hotfix] Fix Eternatus egg tier (#4734)
Some checks are pending
Deploy Main / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Github Pages / Github Pages (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-10-27 04:04:57 +00:00
innerthunder
9a56f080db
[Hotfix] Fix status damage triggering before berry usage (#4732)
* Fix status damage triggering before berry usage

* Bump version number

* Revert "Bump version number"

This reverts commit 64b194f5a7.

* Bump version number for real this time
2024-10-27 02:34:48 +00:00
Frederico Santos
908784b011 Merge branch 'main' of github.com:pagefaultgames/pokerogue into pokerogue-main
Some checks are pending
Deploy Main / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Github Pages / Github Pages (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-10-26 22:43:47 +01:00
Frederico Santos
a9a73863e8 Comment out startGame call on manifest fetch failure 2024-10-26 22:43:15 +01:00
Frederico Santos
78adade5c3
Merge pull request #4730 from pagefaultgames/beta
1.1.0 - The Halloween Update
2024-10-26 22:29:58 +01:00
Moka
22865c010a
fix oversight with save migration (#4731)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
2024-10-26 22:16:37 +01:00
Madmadness65
4fb1f37baa [Sprite] Fix Berry Juice item sprite
Sprite will now be centered properly.
2024-10-26 16:13:05 -05:00
Frederico Santos
61193562f1 Updated date 2024-10-26 21:30:05 +01:00
pom-eranian
4be0214d5a
[fix] added missing rare icons for spinarak, ariados. added to icon sheet (#4729) 2024-10-26 21:09:19 +01:00
pom-eranian
39362389c7
[Sprite] October Variant Update (#4608)
* 40 Wigglytuff (base fix) @ hanniel

* 39 40 174 variant icons

* 39 40 174 - Variant Palettes

* 359 - Absol Mega Absol [Base Fixes] - @ rival_kieran

* 359 Absol Variant icons

* 359 Absol Variant palettes

* 359 Absol  [_masterlist.json]

Enabled variants for absol & mega absol

* [Sprite][Anim] 275 Shiftree- cropped ear fix - @hamez

* Honchcrow Murkrow [Base fixes]

* Murkrow Honchkrow - Icons for variant & female murkrow

* 198 430 Murkrow Honchkrow Variants [Epic Rare]

* [fix] 359 - masterlist - removed ghost entry for exp absol

* 527 528 Woobat Swoobat [Epic Rare] @ rival_kieran

base fix on  woobat back, swoobat front, back
palette files for front, back
added to masterlist
variant icons

* [fix] masterlist -removed incorrect entry

* 590 591 Foongus Amoongus @ Omniv

variant icons
variant palettes
fixes for base front and back

* 587 Emolga [Rare Epic] @ bagonganda

icons variants
front back base fix
variant palettes

* [fix] masterlist  Added missiing variants.  Added Qwuilfish variants

Qwilfish icons
variant palettes

Enabled variants for pokemon in title.
39 40  174 Jigglypff Wigglytuff Igglybuff
587 Emolga
211 Qwilfish

* 377 378 379 486 894 895 Regirock Regice Registeel Regigigas Regieleki Regidrago @greenninja757 @_vari_ @splashceles @gonfold @sphinx_sage

variant icons
variant palettes
base fixes for regigigas, regieleki & registeel
added all to masterlist

* 684 685 Swirlix Slurpuff [Rare Epic] - @ gerolau

* 682 683 - Sprizee Aromatisse [Rare Epic] - @ Koda_want_to_sleep

* 378 Regice [Base shiny + replacement] - @ Vari

* 501 502 503 6503 - Oshawott Dewott Samurott [Base Fix Rare Epic] - @Omniv @yepitscaio

* 152 153 154 - Chikorita Bayleef Meganium [Base Fix Rare Epic] - @ corsola_bandit

* 807 Zeraora [Epic Rare] - @ luckyluckylucky

* 194 195 Wooper Quagsire [Rare Epic] - @ OfficerPorkchops

cleaned up wooper's face
variant icons
added to masterlist
palette files

* 616 617 Shelmet Accelgor [Base fix, Rare, Epic] - @ Vari

shelmet base fixes
variant icons
variant palettes
added to masterlist

* 588 589 Karrablast Escavalier [Rare, Epic] - @ Vari

variant palettes
variant icons
added to masterlist

* 170 171 Chinchou Lanturn [Rare, Epic] - @ thetruegge

variant icons
variant palettes
added to masterlist

* 158 159 160 Totodile Croconaw Feraligatr [Rare, Epic] - @ Dingosig @ Ashhawk

variant icons
variant palettes
added to masterlist

* [128] Tauros [Rare Epic] - @ Bibble

variant icons
variant palettes
added to masterlist

* 509 510 Purrloin Liepard [Basefix, Rare, Epic] - @ MeganiumOpus

variant icons
variant palettes
base fix 510 liepard
added to masterlist

* 390 391 392 Chimchar Monferno Infernape [Base Fix, Rare, Epic] @ hanniel.15

base fix all
variant icons
variant palettes
added to masterlist

* [fix] masterlist erroneous value on chinchou, lanturn

* 455 Carnivine [Base Fix Rare Epic] - @ hamez

base fix for front, back
variant icons
variant palettes
added to masterlist

* 944 945 Shroodle Grafaiai [Base fix, Shiny fix, Rare, Epic] - @ Vari

* 167 168 Spinarak Ariados [Rare, Epic] - @ Thorn @ wormhood

* 676 Furfrou [BaseFix Rare Epic] - @ gerolau

* Variant removed 509 510 Purrloin Liepard

This reverts commit 90ab203708.

* 621 - Druddigon [Rare Epic] - @ Koda_want_to_sleep

variant palettes
variant icons
added to masterlist

* Fix misplaced Gen4 variant icons

* Remove misplaced Gen4 variant icons

* More icon fixes

- Shiny Milotic antenna recolour
- Shaded variant Eevees and added Partner variants
- Swapped Golbat common and rare
- Added variant Centiskorch and Gmax

* Move misclassified Gen9 icons

Also fixes a stray pixel on Fuecoco.

* 102 103 2103 Exeggcute Exeggutor [Rare. Epic] - @ clickonflareblitz

variant palettes
variant icons
added to masterlist

* 276 277 Taillow Swellow [BaseFix Rare Epic] - @ peng06

variant icons
variant palettes
base fixes on all spritesheets
added to masterlist

* [QoL] reordered key for 6713 exp

* reformat of masterlist with less whitespace

* 1012 1013 Poltchageist, Sinistcha

icons, variants, base fixes, my sanity

* 172 Pichu [basefix rare epic]

* 26 raichu [basefix rare epic]

* 25-gmax pikachu [basefix rare epic]

* 25 raichu [basefix] added missing female back

* 25-beauty-cosplay pikachu

* 25-tough-cosplay pikachu [epic rare]

* 25-smart-cosplay pikachu

* 25-cute-cosplay pikachu

* 25-cool-cosplay pikachu

* 25-partner pikachu

* 25 pikachu

* 25-cosplay pikachu

* 2026 alolan raichu  [basefix rare epic]

* 25 pikachu - corrected icon colors, shiny correct colors

* 25 other icons

* 656 657 froakie frogadier

* removed variant images included in commits for  25 26 172 2026, 1012 1013, 656 657

* [masterlist] added 25 26 172 2025 pikachu raichu pichu a-raichu

* [masterlist] added 1012 1013 poltchaageist sinistcha

* [masterlist] added 656 657 froakie frogadier [GRENINJA MISSING]

* 688 689 Binacle Barbaracle [Base Fix, Rare, Epic] - @ saltedcarriemel

replaced front static by first frame of exp
base fixes
variant palettes
variant icons
added to masterlist

* [658] ash-greninja static front variants

* 658 greninja, ash greninja [rare epic]

base fixes
animation standardized front / back
variant palettes
variant icons
added to masterlist

* [fix][icons]  torchic, combusken, blaziken gender icons

* [fix] 658 corrected color error

white on knees

* Updated variant icon sheets

* Reverted override file pushed By Mistake

WHY WAS IT THERE.

* [fix] icon sheet v1 - removed ".png" from file names

---------

Co-authored-by: chaosgrimmon <31082757+chaosgrimmon@users.noreply.github.com>
2024-10-26 18:06:07 +01:00
Frederico Santos
51b2a4d7fe
Something (#4728)
* [Feature] Add event-based friendship multiplier and update TrainerConfig for event modifiers

* [UI][Dev] Improve event banner placement (#4726)

* [ui] automatically place event banner and timer in the title screen

* add new event banner

* ugh

* [Refactor] Clean up TrainerConfig and remove unused timed event

---------

Co-authored-by: Moka <54149968+MokaStitcher@users.noreply.github.com>
2024-10-26 17:14:17 +01:00
Smewkie
61cf937cab
[Balance] Ferroseed HA
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Ferroseed HA
2024-10-26 00:38:12 +01:00
PigeonBar
f87ac116fa
[Beta] Stop Transform giving copied moves negative fractional ppUp (#4722)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* [Beta] Stop Transform giving copied moves negative fractional `ppUp`

* Remove some bangs/etc

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-25 19:34:40 -04:00
chaosgrimmon
6418f46bf7
[Sprite] Fix transparency of pixels on Fletchinder (#4720)
* [Sprite] Front Fletchinder

* [Sprite] Back Fletchinder

* [Sprite] Shiny front Fletchinder

* [Sprite] Shiny back Fletchinder
2024-10-25 16:02:05 -07:00
Frederico Santos
a50763cd89 updating locales 2024-10-25 23:29:20 +01:00
innerthunder
414e0a5447
[Balance] Change Tyrogue to move-based evolutions (#4694)
Some checks failed
Deploy Beta / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
2024-10-23 23:17:55 -07:00
Opaque02
a2419c4fc3
[Misc] Add admin for (un)linking 3rd party accounts (#4198)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Updated admin panel to allow the concept of unlinking accounts

* Don't look too hard at this commit, nothing to see here

* Admin stuff

* Fixed linking and unlinking and updated menu options

* Undid some changes and cleaned up some code

* Updated some logic and added some comments

* Updates to admin panel logic

* Stupid promises everyone hates them and they deserver to die

* Promise stuff still

* Promises working thanks to Ydarissep on discord - pushing with debug code before it decides to stop working again

* Removed debugging code

* All discord functionality seems to be working here?? Not sure what happened but yay

* Fixed up some bugs and code

* Added registered date to the panel

* Fixed and updated some minor error message related stuff

* Minor changes

* Fixed some minor bugs, made the save related errors have error codes, and added updated icons

* Updated search field error

* Missed a couple of things to push

* Fixed linting and doc errors

* Revert dev related code and clean up dev comments

* Reverting utils

* Updating front end to match back end from Pancakes' comments

* make getFields and getInputFieldConfigs a single function of FormUiHandler

* remove outdated doc

* Apply suggestions from code review

Moka review changes

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

* Added docs

* eslint fixes

* Fixed error not showing up in certain conditions

---------

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
Co-authored-by: MokaStitcher <millennium.stitcher@gmail.com>
Co-authored-by: MokaStitcher <54149968+MokaStitcher@users.noreply.github.com>
Co-authored-by: innerthunder <brandonerickson98@gmail.com>
2024-10-23 22:00:07 +02:00
Moka
a13550ec44
[Balance][ME] Various ME Balance changes (#4700)
* balance changes and updates to various MEs

* fix import to new item

* fix import to new item

* Update src/data/mystery-encounters/utils/encounter-pokemon-utils.ts

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

* Update src/phases/select-modifier-phase.ts

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

* Update src/modifier/modifier.ts

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

* Update src/modifier/modifier.ts

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

* revert item atlas changes

* eslint

* revert 'revert item atlas'

* update locale repo to latest commit

* Fix fiery fallout missing argument

* [balance] Training session ME does not update Seen/Defeated GameStats

* [balance] update Weird Dream ME maximum spawn wave

* [ME] update CombinationRequirements to allow AND or OR combinations

* refactor: CombinationPokemonRequirement `.Some()` and `Every()`

* chore: rename `orRequirements` to `requirements`

* fix: returns of `Some()` and `Any()`

* apply `Some()` / `Any()` pattern to `CombinationSceneRequirement` too

* revert 'offer you can't refuse' giving Silver Pokeball'

* Apply code review suggestions

* [me] Weird Dream: apply same old gateau logic to team in options 1 and 2

---------

Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com>
Co-authored-by: ImperialSympathizer <110984302+ben-lear@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: innerthunder <brandonerickson98@gmail.com>
2024-10-23 21:46:57 +02:00
innerthunder
c7e9eaf435
[P2] Fix binding, etc. not being removed when switching with Baton Pass (#4709)
* Fix binding, etc. not being removed when switching with Baton Pass

* New baton pass test
2024-10-23 11:24:50 -04:00
schmidtc1
958d79140c
[P2] Fixes Transform/Imposter not updating type/battle stat changes immediately; set move PP to 5 when transforming (#3462)
* Adds updateInfo to transform move/ability, mirrors Transform functionality in Imposter

* Implements functionality for reducing pp to 5 or less for each move when transforming

* Refactors to async/await pattern, adds back removed anims/sounds from last commit

* Eslint fix attempt

* Update src/data/ability.ts

per DayKev's suggestion

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

* Merge and fix conflicts

* Adds unit tests for pp-change with transform/imposter

* Updates to consistency in syntax/deprecated code

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-23 11:12:53 -04:00
NightKev
fd38ab4cb4
[P2] Missing Minior form (violet) now spawns in the wild (#4711) 2024-10-23 11:10:43 -04:00
innerthunder
03025b2674
[P2] Fix various charge move bugs (#4595)
* Add charge move classes and phase

* Integrate `MoveChargePhase` in battle phase sequence

* Fix Protean + charge move interaction

* Fix effect chance applying to semi-invulnerability

* Remove `ChargeAttr` and fix ChargeAnim loading

* Restore move history entry for charge phases

* Gravity now cancels Fly, etc. after charge turn

* Dig integration tests

* Fly integration tests

* Dive integration test + fix Dive in Harsh Sun bug

* Solar Beam integration tests + `CHARGING` tag fixes

* Fix dive test

* Electro Shot integration tests

* fix import in MoveChargePhase

* Electro Shot Multi Lens test

* Geomancy integration tests

* Fix duplicate move queue

* Update import

* Docs + Fix Meteor Beam being boosted by Sheer Force

* Fix volt absorb test

* Apply PigeonBar's suggested move-phase changes

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

* Make Electro Shot Sheer Force boosted again

* Apply PigeonBar's feedback pt. 2

* Apply suggestions from code review

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

* Fix mistimed/dupe showMoveText and leftover TODO

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
2024-10-23 11:08:40 -04:00
Moka
16b7194366
[P3] Fix Egg Summary not showing new abilities in blue (#4712) 2024-10-23 11:05:13 -04:00
bjparker1226
a0baf89297
[P2] Fix dark deal reducing transformed Pokemon's held item stack to 1 (#4707) 2024-10-23 11:04:37 -04:00
NightKev
1ad4f3b376
[Test] Add STATUS_ACTIVATION_OVERRIDE to overrides.ts (#4689)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
This applies to Paralysis and Freeze

Added Paralysis test to demonstrate usage

- Consolidate `this.cancel()` calls
2024-10-22 23:11:02 -04:00
Blitzy
0fe57b44b5
[Balance] Add Exclusive Moves from Prior Evolutions via Memory Mushroom (#4681) 2024-10-22 18:13:10 -07:00
damocleas
96e5f2d763
Starmobile Stat Adjustments (#4704)
Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com>
2024-10-22 18:07:28 -07:00
Mumble
5e7f2042fc
[UI][QoL] Cursor defaults to Fight at the start of each new wave (#4666)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* cursors are dumb

* update

* fixed?

* maybe solution

* fix in!

* Possible cursor fixes

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: Opaque02 <66582645+Opaque02@users.noreply.github.com>
2024-10-22 13:05:37 -07:00
NightKev
181f59882a
[P2] Fix Early Bird (#4632)
* Fix Early Bird, add tests

* Update tsdocs for Early Bird's `AbAttr`

Rename `turnCount` to `toxicTurnCount` and
`turnsRemaining` to `sleepTurnsRemaining` in `status-effect.ts`

* Fix Toxic Orb test

* Redundant code :despair:

* Fix status override to set the number of sleep turns
2024-10-22 12:37:13 -04:00
Mason S
7066a15ceb
[Refactor] Added BattlerTagLapseType.AFTER_HIT (#3655)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* [Refactor] Added ON_GET_HIT BattlerTagLapseType

Adjusted BeakBlastChargingTag and ShellTrapTag to use new lapse type

Adjusted MoveEffectPhase to now lapse all tags with the ON_GET_HIT lapse type

* [Refactor] Added ON_GET_HIT BattlerTagLapseType

Adjusted BeakBlastChargingTag and ShellTrapTag to use new lapse type

Adjusted MoveEffectPhase to now lapse all tags with the ON_GET_HIT lapse type

* Fix nits

* Rename `ON_GET_HIT` to `AFTER_HIT`

Change `isOpponentTo` to `isOpponent`

* Fix a couple minor nits

* Remove single-use function

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-21 23:53:00 -07:00
innerthunder
c2eb9de9df
[Ability] Partially Implement Infiltrator (does not work with mist) (#4636)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Implement Infiltrator

* Integration tests + Infiltrator is (P) again

* Fix screen tests

* Fix `hitsSubstitute`

* docs for Infiltrator attr
2024-10-21 21:41:25 -04:00
PrabbyDD
467841d167
[P2] Nightmare triggers at turn end instead of after move (#4702) 2024-10-21 21:33:41 -04:00
NightKev
f7797603a1
[P2] Fix oversight where hazards cannnot affect Pokemon that set it (#4693)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Fixes #935
2024-10-21 11:03:12 -04:00
NightKev
966b07f62b
[Misc] Shiny overrides can now force Pokemon to not be shiny (#4699)
Also fixes random shinies breaking tests
2024-10-21 11:00:58 -04:00
innerthunder
f51814467a
[P3] Fix mistimed sound effect in LearnMovePhase (#4698) 2024-10-21 10:59:23 -04:00
NightKev
b76e54fe7f
Replace duplicate code with getDoubleBattleChance() (#4690)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-10-21 02:29:21 -07:00
Lugiad
75a114a89f
[Localization][UI/UX] emerald-pro font update (#4697)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Add files via upload

* Delete public/fonts/pokemon-emerald-pro.ttf

* Rename pokemon-emerald-pro2.ttf to pokemon-emerald-pro.ttf
2024-10-20 22:45:12 -04:00
MokaStitcher
e6c06d57be
[P All][Bug] Various ME bugfixes (copy) (#4695)
* Mystery Encounter bugfixes

* more ME bug fixes

* update allowed pokemon in ME requirements

* some unit test cleanup and general tidying

* fix null exception on isBattleMysteryEncounter

* clean up tsdocs and fix pokemon hasAbility check

* fix double battle crash in challenge mode with a single eligible pokemon

* apply suggestions from PR#4619's code reviews

* revert fix for Keldeo crashes + implement fix suggestion from PR #4619

* fix session migration for PokemonCustomData

* prevent test failure due to keldeo fix

---------

Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com>
2024-10-20 22:55:07 +01:00
NightKev
39abac65be
Add eslint rule to enforce indenting of case statements (#4692)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-10-20 02:44:36 +01:00
Frederico Santos
5c70ab238e
Merge pull request #4684 from pagefaultgames/main
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Main -> Beta
2024-10-18 21:53:21 +01:00
PigeonBar
de64fd7720
[Misc] [Beta] Fix crash when loading save preview with Mystery Encounter Override active (#4683)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-10-17 23:52:46 -04:00
MokaStitcher
c5b3220b86
[Beta P3][UI] Fix item/cursor placement in reward screen (#4678)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-10-17 13:46:51 -04:00
Mumble
2f212f52eb
fixed effectChanceOVerrride location + removed ability tags (#4677)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Co-authored-by: frutescens <info@laptop>
2024-10-16 23:31:30 -07:00
Amani H.
85b8ca6467
[Dev] Bump Game Version, Overhaul Version Migration (#4388)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Bump Version, Remove "Outdated" Message

* Fix `src/ui/ui.ts`

* Fix `src/system/game-data.ts`

* Clean Up & Organize Version Migration

* Rename Methods & Session Migration Adjustment

* Collapse Version Migrators to Single File as Arrays

* Address NITs

* Restructure Migration Initialization

* Fix Spacing, Increment to v1.6.0

* Revert Back to v1.1.0

* Add `gameVersion` to Mocked Game

* Add More Documentation

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-17 00:48:28 +01:00
Madmadness65
afebecd43c
[P2 Bug] Fix pool entry for Jynx not using baby species (#4675) 2024-10-16 17:16:10 -05:00
NightKev
d92d63e81f
[Misc] Restore info comment that was accidentally removed (#4674) 2024-10-16 16:10:19 -04:00
AJ Fontaine
d5fee37868
[Refactor] Add friendship related constants (#4657)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Add constants for friendship

* Absolute path in battle-scene.ts

* Address nits

* Apply negative to constant
2024-10-16 14:55:23 -04:00
Lugiad
3ea459746a
[Localization] [UI/UX] Italian Type and Status icons (#4673) 2024-10-16 14:53:25 -04:00
PigeonBar
1907824670
[P1] Fix party UI crash from unsanitized lastCursor pointing to empty Pokemon slot (#4672) 2024-10-16 11:10:35 -04:00
PigeonBar
72c08e5cfd
[Refactor] Clean up commented safari zone code from #4661 (#4671) 2024-10-16 11:09:48 -04:00
Mumble
2caa09f246
[Move] Fully Implement Secret Power (#4647)
* initial work

* move go

* biomes for damo

* more cleanup

* added effect for space

* test

* balance change 1

* i'm silly

* fixed effect cahnce

* secret power atr

* Apply suggestions from code review

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

* got tests to work + added final balance biomes

* added documentation

* Apply suggestions from code review

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

* Update src/data/move.ts

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

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-16 10:38:12 -04:00
PigeonBar
c6ec01958c
[Bug] Fix for Expert Breeder's Pokemon being invisible and IV scanner in safari zone (#4661)
* [Bug] Potential fix for Expert Breeder's Pokemon being invisible

* PR Feedback

* Consistency with await
2024-10-16 10:31:32 -04:00
PigeonBar
50ff6e703a
[P1 Bug] Fix several Destiny Bond crashes (#4665)
* [P1 Bug] Fix several Destiny Bond crashes

* PR Feedback
2024-10-16 10:30:38 -04:00
innerthunder
093f3d90f5
[Balance] Add Memory Mushroom to Shop (#4555)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Add Memory Mushroom to Shop + escape TM selection

* consolidate learn move type params into an enum

* Rewrite lock capsule test

* Disable luck upgrades for copied SMPhases

* Mem Mushroom Cost 4x Update modifier-type.ts

* Add undefined cost check to `addModifier`

* Increase shop options row limit

* Prevent SMPhase copies from updating the seed

---------

Co-authored-by: damocleas <damocleas25@gmail.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-15 18:06:56 -07:00
Madmadness65
c04d81bd65
[Ability] Allow Power Construct to transform 10% PC Zygardes (#4626)
* Allow Power Construct to transform 10% PC Zygarde

* Add additional test for 10% PC Zygarde
2024-10-15 15:02:30 -04:00
innerthunder
1966335627
[Refactor] Add type inference and support for simulated calls to ArenaTag.apply (#4659)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Add simulated support for Arena Tag application

* Add type inference to ArenaTag.apply

* Fix screen tests

* back to `any` again lol

* fix missing spread syntax (maybe)

* updated docs

* named imports for `Utils`
2024-10-15 13:13:54 -04:00
Mumble
d01d856898
[Refactor] Default case to display challenge name (#4656)
Co-authored-by: frutescens <info@laptop>
2024-10-15 10:05:21 -04:00
PrabbyDD
21b71595e0
[P2] Attacks that miss against pokemon in semi invul state that have abilities such as volt absorb will not trigger (#4663)
* fixing issue where abilities trigger in semi invul state

* fixing targets
2024-10-15 10:04:26 -04:00
innerthunder
d5f87bbea7
[P3][Beta] Fix missing move text when a move fails (#4664)
* Fix missing move text when a move fails

* Use `cancel` function instead of setting `this.cancelled`
2024-10-15 10:02:02 -04:00
Blitzy
bb98bc2f8e
[Balance] Evil Team Update / Penny Adjustments (#4577)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Update trainer-config.ts

* Update trainer-config.ts

* Update trainer-config.ts

* Fixed Flare Grunt's having Noivern > Noibat

* Revert Inkay change, Change Penny

* Give Admin aces canonical genders

* Update trainer-config.ts

* Update trainer-config.ts

---------

Co-authored-by: Madmadness65 <blaze.the.fireman@gmail.com>
Co-authored-by: damocleas <damocleas25@gmail.com>
2024-10-15 02:17:20 -07:00
NightKev
e962ac1f18
[Beta Bug] Prevent duplicate move failure message (#4662)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-10-14 17:47:23 -04:00
cadi
e7a4d4055f
[Move] Implement Power Trick (#2658)
* add `PowerTrickTag`

* modify getStat() with PowerTrickTag

* implement `PowerTrickAttr`

* add unit test

* enhance docs and tag apply logic

---------

Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr>
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: Enoch <enoch.jwsong@gmail.com>
Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com>
Co-authored-by: Amani H. <109637146+xsn34kzx@users.noreply.github.com>
Co-authored-by: Niccolò <123510358+NicusPulcis@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-14 12:39:34 -07:00
MokaStitcher
676322e800
[QOL] Add input delay for skipping egg summary (#4644)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-10-14 10:42:59 -04:00
Mumble
8981f0e7a8
Trainer party de-duplication checks static pokemon too (#4585)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Co-authored-by: frutescens <info@laptop>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
2024-10-13 19:20:55 -07:00
PigeonBar
e340abe75d
[P1 Bug] Fix softlock when a phazing attack activates a reviver seed (#4654)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* [P1 Bug] Fix softlock when a phazing attack activates a reviver seed

* Polishing tests

* Change approach to respect Parting Shot's targeting

* Tests: Added checks for correct number of Pokemon on field
2024-10-13 20:08:47 -04:00
Mumble
8a355d500a
[Bug] Move Restriction Battler Tag bugs (#4536)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Added fixes

* Revert "Added fixes"

This reverts commit 3feccd792d.

* Added loadTag functions

* Fixes

* typeodcs

* Torment

* yawn

* hsldklahdlhalhdlahldhlah

* Imprison Fixes

* Fixed imprison not interrupting PRE_MOVE

* just kidding

* Apply suggestions from code review

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

* Fixing what broke

* added scp[es

* missed a scope

* Update src/data/battler-tags.ts

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

* good tp go

* merge

* battler tags

* Apply suggestions from code review

* Changed function names

* publics

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-13 03:30:04 -04:00
innerthunder
470f9e4e19
[P3] Fix Substitute visual error on wave transition (#4648) 2024-10-13 00:46:41 -04:00
Tempoanon
391f38c3c8
[Documentation] Document all (P) abilities (#4649)
* Document partial abilities

* Fix typo

* Address comments

* Fix typo Terapagos -> Ogerpon

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-13 00:45:38 -04:00
damocleas
8e7aea0f89
Fixed Charizard and Kingler BST, fixed ability indexing for gmax forms (#4652) 2024-10-13 04:51:14 +01:00
Tempoanon
caf29e2ce3
[Documentation] Document all (P) moves (#4650)
* Document all (P) moves

* Fix some typos

* Fix more typos

* Address innerthunder comments

* Add circle throw and dragon tail (P)
2024-10-12 23:42:20 -04:00
PrabbyDD
ebb7612999
[Bug] Stat Stages are now changed individually instead of all at once (#4457)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com>
2024-10-12 15:29:36 -07:00
PigeonBar
2ac688de4b
[Misc] More complete phase logging (#4651) 2024-10-12 13:06:26 -07:00
PigeonBar
b7eb95b761
[Test] Fix several flaky tests (#4639)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-10-12 11:22:26 -04:00
Mumble
cfb92b4e08
[Move] Telekinesis + [Bug] Ingrain (#4506)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* some early set up

* localization

* Added Wiglett family to restrictions

* Added Smack Down + 1000 Arrows Interactions

* Added checks for certain tags

* Gravity removes telekinesis from all pokemon on the field

* need to check something else real quick

* mmmmmm

* think this is fine?

* ingrain fixes

* more ingrain

* Telekinesis Test + Move Fix

* Test Name change

* another day another try...

* Test Cleanup

* fsfdsfds

* Revert "fsfdsfds"

This reverts commit cb7abcfd9f.

* whoops

* Apply suggestions from code review

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

* Missed one

* Update src/data/move.ts

Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* Add separate battler tags in move attr

* Update src/data/battler-tags.ts

Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>

* removed onRemove

* Documentation

* Update src/data/battler-tags.ts

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: PigeonBar <56974298+PigeonBar@users.noreply.github.com>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
2024-10-11 17:44:16 -04:00
innerthunder
7645d5042d
[P3] Fix "falsex" type hint for Sheer Cold against ice types (#4638)
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-11 16:09:15 -04:00
pom-eranian
f0cc1fc88b
[Sprite] Hisui Goodra, Sliggoo, Shiftry (#4642)
* [Sprite][Anim] 275 Shiftree- cropped ear fix - @hamez

* 705 6706 Sliggoo Hisuian Goodra [Color Fixes] - @ rival_kieran

- Fix to Kalosian Sligoo (705). Front exp should now use shaders properly.
- Fix to all of Hisuian Goodra's base sprites + Variants to allow them to use shaders properly (as they didn't before). .json file included.
- Fix to Hisuian Goodra's back static Rare Variant which used colors from the Epic variant on accident on cheeks + spots and drips.
- Hisuian Goodra's eyes on Variant (Rare, Epic) exps were mapped to the wrong color compared to the statics, this has been fixed.
- All images should be indexed.

* Set variants to palette, removed old files
2024-10-11 16:08:39 -04:00
MokaStitcher
89d7e7ea65
[P3][UI] Fix tooltip bugs in Starter Select screen (#4641)
* [UI] Fix candy friendship tooltip bug in Starter Select

* [UI] remove tooltip when exiting starter select screen
2024-10-11 15:46:00 -04:00
Mason S
70b9a43c8b
[P2] Fix first-turn status damage and arena hazards (#3528)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* [Bug] Toxic Spikes implementation issues fixed

Adjusted MoveEffectPhase.start() so that ENEMY_SIDE targeted moves no longer occur twice per use in double battles.

Updated Toxic Orb test to no longer expect a tick of damage turn 1.

Fixed Toxic/Poison dealing damage immediately when applied.

Fixed Hazards not persisting through save

Added unit tests

Fixed flyout not displaying correct number of Spikes/Toxic Spikes after a refresh

* Update Toxic Orb test

* Updates Toxic Spikes tests

* Apply suggestions from code review

* Fix merge issues

Replace `integer` with `number` in `arena-tag.ts`

* Remove partial Magic Bounce implementation

* Remove stray newline

* Remove extra change in safeguard test

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-11 10:41:54 -04:00
MokaStitcher
4f456339f4
[UI] Remove score display in voucher menu (#4616) 2024-10-11 10:26:47 -04:00
MokaStitcher
80a784ac8d
[P3 Beta][UI] Fix loading behavior introduced with save preview (#4633)
* [ui] partially revert loading behavior introduced with save preview

* [beta][ui] fix scrolling issue in Load Game menu
2024-10-11 10:24:53 -04:00
NightKev
407cd65dcb
[Misc] Enemy item override will now apply to all enemies (#4620)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Enemy item override will now apply to all enemies

* Update tsdocs
2024-10-11 00:20:28 -07:00
Amani H.
3f63c147a3
[P3] Fix "Stat Won't Go Any Lower/Higher" Not Appearing (#4635)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-10-10 12:44:51 -07:00
NightKev
5d0b361320
[P2] Syrup Bomb effect is removed when user leaves the field (#4606)
* Syrup Bomb's effect expires when the move user leaves the field

* Add test

* Remove check for the affected pokemon being switched out
2024-10-10 13:19:05 -04:00
ImperialSympathizer
6ad5ba972c
[Enhancement] Refactor Starter Species to use separate EggTier map (#4591)
* creates table for tracking species egg tiers

* creates table for tracking species egg tiers

* rename EggTier enum values

* replace clamp util function with Phaser function

---------

Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com>
2024-10-10 09:29:26 -07:00
Adrian T.
0996789ee6
[Refactor] Improve typing in phaseInterceptor.ts (#4560)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* improve typing in phaseInterceptor

* add more param typings

---------

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-10 11:54:43 -04:00
NightKev
ba7e26152e
[Bug] Fix substitute interactions with PostDefendAbAttrs (#4570)
* Fixes some Substitute interactions

Specifically with Disguise/Ice Face and Gulp Missile

* Add tests

* Fix linting

* Add `hitsSubstitute()` checks to all `PostDefendAbAttr`s

Also fix comment indentation in `MoveEffectPhase`

* Revert `move-effect-phase.ts` changes
2024-10-10 11:45:02 -04:00
Mumble
a778537cca
[P2] Sketch Failure Bug involving multiple Sketch-s in a moveset (#4618)
* Sketch bug fix

* Added test

---------

Co-authored-by: frutescens <info@laptop>
2024-10-10 11:43:50 -04:00
PigeonBar
64147e4414
[P2] Fix Battle Bond continuing to affect Water Shuriken after Greninja returns to base form (#4602)
* [Bug] Fix Battle Bond continuing to buff Water Shuriken after Greninja returns to base form

* Test cleanup

* PR feedback

* Update test to use getMultiHitType()

* PR Feedback
2024-10-10 11:40:14 -04:00
Mumble
51894d46c2
[P2] Pollen Puff ally behavior fixed (#4615)
* pollen puff fix

* bcvbvcbfd

* integerholder to numberholder

* moved it back

---------

Co-authored-by: frutescens <info@laptop>
2024-10-10 11:38:17 -04:00
Mumble
e9906ea229
[P2] Obstruct/Kings Shield/etc no longer reduce stats through Clear Body/etc (#4627)
* bug fix

* Add test

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-10 11:31:10 -04:00
NightKev
52257def2f
[P3] Fix enemy used PP flyout, fixes #4622 (#4629)
Also add missing function return types
2024-10-10 11:30:19 -04:00
PigeonBar
ca3cc3c9c6
[P1 Bug] Fix infinite recursion from abilities disabled by Sheer Force (#4631) 2024-10-10 11:28:26 -04:00
flx-sta
f180b6070e
[Qol] Load i18n en locales during tests (#4553)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* add: i18n backend support

the backend is being supported by using msw which will import the correct file from the local locales folder

* fix: tests to no longer rely on static i18n keys

* Update src/test/mystery-encounter/encounters/teleporting-hijinks-encounter.test.ts

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

* Update src/test/mystery-encounter/encounters/teleporting-hijinks-encounter.test.ts

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

* Update src/test/ui/type-hints.test.ts

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

* Update src/test/mystery-encounter/encounters/a-trainers-test-encounter.test.ts

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

* Fix typos

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

* Fix linting

* update locales submodule

update reference to `56eeb809eb5a2de40cfc5bc6128a78bef14deea9` (from `3ccef8472dd7cc7c362538489954cb8fdad27e5f`)

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: MokaStitcher <54149968+MokaStitcher@users.noreply.github.com>
Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com>
2024-10-09 13:01:49 -07:00
Mumble
ffe941d235
[Feature][UI] Save Preview (#4410)
* Making 3 Option UI real

* idk anymore

* Revert "Making 3 Option UI real"

This reverts commit beaad44c1e.

* 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 15:04:13 -04:00
MokaStitcher
d2c579cf2a
[P2] Prevent generating Pokemon with duplicate IDs in daily runs (#4623) 2024-10-09 14:32:20 -04:00
MokaStitcher
deb2035610
[Beta][P2] Fix Grip Claw (#4614)
* [Beta][P2] Fix Grip Claw

* Add test for Grip Claw

* [test] improve grip claw's test readability

* PR feedback

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-10-09 14:30:28 -04:00
flx-sta
d8c914c768
[Beta P3] Fix i18n namespaces map for mysteryEncounterMessages from mystery-encounter-messages -> mystery-encounter-texts (#4617)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Something I missed in #4611
2024-10-08 13:44:23 -04:00
flx-sta
39cebb76d0
[Bug] i18n messages files fix (#4611)
* fix matching for i18n messages files

* update public/locales head
2024-10-08 13:30:48 -04:00
MokaStitcher
57a967890a
[Offline P1] Fix wrong local save being deleted when creating a new run (#4598)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-10-08 11:11:21 -04:00
MokaStitcher
0ede7b057d
[P3][UI] Fix egg gacha overlay not getting cleared properly (#4600) 2024-10-08 11:10:54 -04:00
MokaStitcher
6e10f6600f
[P2] Fix damage achievements not awarding (#4613) 2024-10-08 11:08:25 -04:00
chaosgrimmon
9bb6398385
[Sprite] Fix stray pixels in Kirlia's animation (#4612)
* [Sprite] Fix Kirlia padding bleedover

* [Sprite] Fix shiny Kirlia padding bleedover
2024-10-08 11:03:47 -04:00
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)
Some checks failed
Deploy / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Github Pages / Github Pages (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
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)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
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)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
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)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
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)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
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)
Some checks failed
Deploy Beta / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Deploy / deploy (push) Has been cancelled
* 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)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Deploy / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
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)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Deploy / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
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)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Deploy / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* 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)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Deploy / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
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)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Deploy / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
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)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Deploy / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* 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)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Deploy / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* 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)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Deploy / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* 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)
Some checks failed
Deploy / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Github Pages / Github Pages (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
2024-10-01 15:24:08 -04:00
DustinLin
45f6b23309
[P2] Chilly Reception's Snow is called during Enemy AI Move Selection (#4528)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Deploy / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* 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)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Deploy / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-09-30 13:14:38 -04:00
NightKev
8a8adad7fe
[Refactor] Clean up some TODOs from the strict-null refactor (#4267) 2024-09-30 13:11:45 -04:00
NightKev
e9ee2c1179
[Refactor] Remove unused parameters in move flag functions (#4516)
Also fix tsdocs for these functions
2024-09-30 13:10:00 -04:00
NightKev
5a20416fd4
[Refactor] Remove redundant session data function in game-over-phase (#4515) 2024-09-30 13:08:16 -04:00
Blitzy
de9fdc5b9c
[Balance] Increase Minimum BST Filter for Elite 4 / Champion Teams (#4501)
* Increase Champion BST

* Slight E4 BST increase

* Update trainer-config.ts

* Move E4/Champion minimum BST values to consts

* Update tsdocs for new consts

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-09-30 13:05:02 -04:00
José Ricardo
d660c217b3
[Localization] Update pt_BR translations for menu, party, and settings (#4518) 2024-09-30 13:03:32 -04:00
Yonmaru40
814aceebc9
[Localization] Zh-cn fix 9-30 (#4517)
* Update modifier-type.json

* Update delibirdy-dialogue.json

* Update department-store-sale-dialogue.json

* Update global-trade-system-dialogue.json

* Update modifier-type.json

* Update party-ui-handler.json

* Update settings.json

* Update trash-to-treasure-dialogue.json

* Update uncommon-breed-dialogue.json

* Update training-session-dialogue.json

* Update egg.json

* Update battle.json

* Update dialogue.json
2024-09-30 13:03:13 -04:00
Lugiad
bab5b31476
[Localization] Expert Breeder ME - Egg bug in locales (#4524)
* Update the-expert-pokemon-breeder-dialogue.json

* Update the-expert-pokemon-breeder-dialogue.json

* Update the-expert-pokemon-breeder-dialogue.json

* Update the-expert-pokemon-breeder-dialogue.json

* Update the-expert-pokemon-breeder-dialogue.json
2024-09-30 13:02:37 -04:00
NightKev
7d2df53c51
Add waveTurnCount to PokemonBattleData (#4168)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Deploy / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Swap `FirstMoveCondition` to use the new `waveTurnCount` field
2024-09-29 23:45:44 -07:00
NightKev
3d3460888a
Add scoring for the Glaive Rush BattlerTags (#4514)
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Deploy / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-09-29 23:04:32 -07:00
innerthunder
1bae87fa56
[Move] Fully Implement Plasma Fists (#4446)
* Implement Plasma Fists

* Update arena-tag.json

* Update arena-tag.json

* Update arena-tag.json

* Update arena-tag.json

* Update arena-tag.json

* Update arena-tag.json

* Update arena-tag.json

* Update arena-tag.json

* Update arena-tag.json

* Update arena-tag.json

---------

Co-authored-by: Lugiad <adrien.grivel@hotmail.fr>
2024-09-29 22:30:33 -04:00
dependabot[bot]
d8ee8ad821
Bump vite from 5.3.5 to 5.4.8 (#4413)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 5.3.5 to 5.4.8.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v5.4.8/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v5.4.8/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-09-29 22:04:31 -04:00
dependabot[bot]
79e172176d
Bump rollup from 4.18.1 to 4.22.4 (#4439)
Bumps [rollup](https://github.com/rollup/rollup) from 4.18.1 to 4.22.4.
- [Release notes](https://github.com/rollup/rollup/releases)
- [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rollup/rollup/compare/v4.18.1...v4.22.4)

---
updated-dependencies:
- dependency-name: rollup
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-29 22:03:09 -04:00
PrabbyDD
d99dbf4955
[P2] Fix for Pokemon Forms have Access to Other Forms' TM Movepools (#4398)
* fixing form issues generating tms pokemon shouldnt have

* cleaning up some code

* fixing tests and allowing rotom unique moves to be learned as tms for that rotom form

* Update src/test/field/pokemon.test.ts

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>

* making tests simpler

---------

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
2024-09-29 22:00:29 -04:00
Adrian T.
4c327e9e63
[Ability] Refactor Gulp Missile and make it trigger when Cramorant faints (#4428)
* reimplement gulp missile

* cleanup + docs

* more cleanup

* add override

* update paths
2024-09-29 21:57:50 -04:00
AJ Fontaine
d620b5c7fa
[Refactor] Move base shiny/HA chance to constants outside functions (#4407) 2024-09-29 21:56:05 -04:00
Madmadness65
82111bc62d
[Enhancement] Gen 7+ grunts can now be in double battles (#4489) 2024-09-29 21:55:17 -04:00
innerthunder
7339facae1
[Ability] Remove (P) from Super Luck (#4498) 2024-09-29 21:54:49 -04:00
MokaStitcher
6d89ad9569
[P2] Fix duplicate mon ID / RNG not properly resetting after game over (#4505) 2024-09-29 21:52:13 -04:00
Mumble
bcec819fa9
[Move] Fully Implement Syrup Bomb (#4441)
* Syrup Bomb + Tests

* Fix typo on import

* Documentation

* Apply suggestions from code review

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

* Removed unnecessary overlap check

* Removed obsolete comment

* learned how forceHit works

* added custom lapse message

---------

Co-authored-by: frutescens <info@laptop>
Co-authored-by: Madmadness65 <59298170+Madmadness65@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-09-29 21:50:11 -04:00
innerthunder
d0600125dd
[P2] Fix Zippy Zap being boosted by Sheer Force (#4469) 2024-09-29 21:49:37 -04:00
MokaStitcher
fd67096a6a
[P3 Bug][UI] Fix egg summary not displaying 1st mon properly (#4507) 2024-09-29 21:48:29 -04:00
Chapybara-jp
2488bf805b
[Localization] [JA] Fixing typos in ability-trigger.json
* Update ability-trigger.json

* Update ability-trigger.json

---------

Co-authored-by: Lugiad <2070109+Adri1@users.noreply.github.com>
2024-09-29 21:46:54 -04:00
fransdhinta
4160aefd93
[Feature] Show app version on title screen (#4344)
* feat: show app version on title screen

* fix: adjust app version positions

* update app version text

---------

Co-authored-by: flx-sta <50131232+flx-sta@users.noreply.github.com>
2024-09-29 18:18:52 -07:00
Leo Kim
b43620b8c5
[Refactor] Optimize trick room ordering code (#4468) 2024-09-29 18:18:07 -07:00
Tempoanon
3976d115d8
Synchronize Beta with main hotfix #5
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Deploy / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Synchronize Beta with Main
2024-09-29 17:03:52 -04:00
NightKev
6187830de7
[Hotfix] Fix crash in GTS ME: replace pokemon with tradePokemon (#4503)
Some checks failed
Deploy / deploy (push) Has been cancelled
ESLint / Run linters (push) Has been cancelled
Github Pages / Github Pages (push) Has been cancelled
Tests / Run Pre-test (push) Has been cancelled
Tests / Run Tests (push) Has been cancelled
2024-09-29 03:47:45 -04:00
ImperialSympathizer
3e8b3930a8
[Hotfix] Change early exit on Dark Deal species calc (#4500)
Some checks are pending
Deploy / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Github Pages / Github Pages (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com>
2024-09-28 22:59:23 -04:00
AJ Fontaine
7bb49a3199
[Hotfix] Fix Gimmighoul evolution (#4473)
* Fix Gimmighoul evolution

* Fix counter

* Stack text fix

* Fix Treasure tracker not saving

* Apply suggestions from code review

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: NightKev <34855794+DayKev@users.noreply.github.com>
2024-09-28 22:11:02 -04:00
Pancakes
000b8d9b2b
Update .env.beta
Some checks are pending
Deploy Beta / deploy (push) Waiting to run
Deploy / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-09-28 17:35:13 -04:00
innerthunder
a69da4bc06
Remove potential desync from PokemonHealPhase (#4497)
Some checks are pending
Deploy / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Github Pages / Github Pages (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
2024-09-28 21:40:42 +01:00
ImperialSympathizer
771b0edcb0
[Hotfix] Fix Black Sludge disappearing on session reload (#4496)
Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com>
2024-09-28 14:21:42 -04:00
Blitzy
357056ebeb
[Balance] Change Kyogre / Pichu eggmoves (#4491) 2024-09-28 14:18:21 -04:00
Lugiad
b1194cdfb6
Update training-session-dialogue.json (#4495) 2024-09-28 18:44:22 +01:00
Pancakes
8ce5de6d45
Update FUNDING.yml 2024-09-28 13:13:18 -04:00
ImperialSympathizer
d87234504c
prevent MEs incorrectly spawning on existing session saves (#4494)
Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com>
2024-09-28 17:59:48 +01:00
Jannik Tappert
3a5f3c39cd
Fixing Placeholder in afterYou (#4493) 2024-09-28 16:24:03 +01:00
Lugiad
0464d8f666
Update modifier-type.json (#4492) 2024-09-28 15:24:57 +01:00
Lugiad
f460f9a0e8
[Localization] [P3 Bug] Incorrect French hotfix (#4483)
Some checks are pending
Deploy / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Github Pages / Github Pages (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* Update uncommon-breed-dialogue.json

* Update bug-type-superfan-dialogue.json

* Update settings.json

* Update uncommon-breed-dialogue.json

* Update settings.json
2024-09-28 02:59:15 -04:00
ImperialSympathizer
5d819aacf2
sanitize all money when saving session data to server (#4485)
Some checks are pending
Deploy / deploy (push) Waiting to run
ESLint / Run linters (push) Waiting to run
Github Pages / Github Pages (push) Waiting to run
Tests / Run Pre-test (push) Waiting to run
Tests / Run Tests (push) Blocked by required conditions
* sanitize all money when saving session data to server

* update money sanitization

---------

Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com>
2024-09-28 04:48:15 +01:00
NightKev
3def9fc15d
[Hotfix] Swap force switch out check from isBoss to wave % 10 (#4484) 2024-09-27 22:51:32 -04:00
ImperialSympathizer
2b3dbcc72f
[Hotfix] Fix black sludge ME causing non-integer money (#4482)
* Fix tag lapsing on battle start in MEs with free enemy moves

* lapse endure tag as well

* fix black sludge item money calculation

* Update src/modifier/modifier.ts

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

---------

Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
2024-09-27 22:34:25 -04:00
NightKev
7eb755ca9c
Prevent the last valid pokemon from being forced to switch (#4481) 2024-09-28 03:07:42 +01:00
ImperialSympathizer
1b6593d242
[Hotfix] Fix ME lapsing non flinch or endure battler tags (#4479)
* Fix tag lapsing on battle start in MEs with free enemy moves

* lapse endure tag as well

---------

Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com>
2024-09-27 21:38:15 -04:00
NightKev
c9664b66d3
[Hotfix] Prevent bosses from being forced to flee by Dragon Tail/etc (#4478) 2024-09-27 21:26:19 -04:00
ImperialSympathizer
2e7f6a2f4f
[Hotfix] hotfix for expert breeder ME crashing if player loses with queued enemy stat changes (#4476)
Co-authored-by: ImperialSympathizer <imperialsympathizer@gmail.com>
2024-09-27 20:07:47 -04:00
5054 changed files with 387265 additions and 451745 deletions

View file

@ -2,92 +2,86 @@
module.exports = {
forbidden: [
{
name: 'no-circular-at-runtime',
severity: 'warn',
name: "no-circular-at-runtime",
severity: "warn",
comment:
'This dependency is part of a circular relationship. You might want to revise ' +
'your solution (i.e. use dependency inversion, make sure the modules have a single responsibility) ',
"This dependency is part of a circular relationship. You might want to revise " +
"your solution (i.e. use dependency inversion, make sure the modules have a single responsibility) ",
from: {},
to: {
circular: true,
viaOnly: {
dependencyTypesNot: [
'type-only'
]
}
}
dependencyTypesNot: ["type-only"],
},
},
},
{
name: 'no-orphans',
name: "no-orphans",
comment:
"This is an orphan module - it's likely not used (anymore?). Either use it or " +
"remove it. If it's logical this module is an orphan (i.e. it's a config file), " +
"add an exception for it in your dependency-cruiser configuration. By default " +
"this rule does not scrutinize dot-files (e.g. .eslintrc.js), TypeScript declaration " +
"files (.d.ts), tsconfig.json and some of the babel and webpack configs.",
severity: 'warn',
severity: "warn",
from: {
orphan: true,
pathNot: [
'(^|/)[.][^/]+[.](?:js|cjs|mjs|ts|cts|mts|json)$', // dot files
'[.]d[.]ts$', // TypeScript declaration files
'(^|/)tsconfig[.]json$', // TypeScript config
'(^|/)(?:babel|webpack)[.]config[.](?:js|cjs|mjs|ts|cts|mts|json)$' // other configs
]
"(^|/)[.][^/]+[.](?:js|cjs|mjs|ts|cts|mts|json)$", // dot files
"[.]d[.]ts$", // TypeScript declaration files
"(^|/)tsconfig[.]json$", // TypeScript config
"(^|/)(?:babel|webpack)[.]config[.](?:js|cjs|mjs|ts|cts|mts|json)$", // other configs
],
},
to: {},
},
{
name: 'no-deprecated-core',
name: "no-deprecated-core",
comment:
'A module depends on a node core module that has been deprecated. Find an alternative - these are ' +
"A module depends on a node core module that has been deprecated. Find an alternative - these are " +
"bound to exist - node doesn't deprecate lightly.",
severity: 'warn',
severity: "warn",
from: {},
to: {
dependencyTypes: [
'core'
],
dependencyTypes: ["core"],
path: [
'^v8/tools/codemap$',
'^v8/tools/consarray$',
'^v8/tools/csvparser$',
'^v8/tools/logreader$',
'^v8/tools/profile_view$',
'^v8/tools/profile$',
'^v8/tools/SourceMap$',
'^v8/tools/splaytree$',
'^v8/tools/tickprocessor-driver$',
'^v8/tools/tickprocessor$',
'^node-inspect/lib/_inspect$',
'^node-inspect/lib/internal/inspect_client$',
'^node-inspect/lib/internal/inspect_repl$',
'^async_hooks$',
'^punycode$',
'^domain$',
'^constants$',
'^sys$',
'^_linklist$',
'^_stream_wrap$'
"^v8/tools/codemap$",
"^v8/tools/consarray$",
"^v8/tools/csvparser$",
"^v8/tools/logreader$",
"^v8/tools/profile_view$",
"^v8/tools/profile$",
"^v8/tools/SourceMap$",
"^v8/tools/splaytree$",
"^v8/tools/tickprocessor-driver$",
"^v8/tools/tickprocessor$",
"^node-inspect/lib/_inspect$",
"^node-inspect/lib/internal/inspect_client$",
"^node-inspect/lib/internal/inspect_repl$",
"^async_hooks$",
"^punycode$",
"^domain$",
"^constants$",
"^sys$",
"^_linklist$",
"^_stream_wrap$",
],
}
},
},
{
name: 'not-to-deprecated',
name: "not-to-deprecated",
comment:
'This module uses a (version of an) npm module that has been deprecated. Either upgrade to a later ' +
'version of that module, or find an alternative. Deprecated modules are a security risk.',
severity: 'warn',
"This module uses a (version of an) npm module that has been deprecated. Either upgrade to a later " +
"version of that module, or find an alternative. Deprecated modules are a security risk.",
severity: "warn",
from: {},
to: {
dependencyTypes: [
'deprecated'
]
}
dependencyTypes: ["deprecated"],
},
},
{
name: 'no-non-package-json',
severity: 'error',
name: "no-non-package-json",
severity: "error",
comment:
"This module depends on an npm package that isn't in the 'dependencies' section of your package.json. " +
"That's problematic as the package either (1) won't be available on live (2 - worse) will be " +
@ -95,87 +89,75 @@ module.exports = {
"in your package.json.",
from: {},
to: {
dependencyTypes: [
'npm-no-pkg',
'npm-unknown'
]
}
dependencyTypes: ["npm-no-pkg", "npm-unknown"],
},
},
{
name: 'not-to-unresolvable',
name: "not-to-unresolvable",
comment:
"This module depends on a module that cannot be found ('resolved to disk'). If it's an npm " +
'module: add it to your package.json. In all other cases you likely already know what to do.',
severity: 'error',
"module: add it to your package.json. In all other cases you likely already know what to do.",
severity: "error",
from: {},
to: {
couldNotResolve: true
}
couldNotResolve: true,
},
},
{
name: 'no-duplicate-dep-types',
name: "no-duplicate-dep-types",
comment:
"Likely this module depends on an external ('npm') package that occurs more than once " +
"in your package.json i.e. bot as a devDependencies and in dependencies. This will cause " +
"maintenance problems later on.",
severity: 'warn',
severity: "warn",
from: {},
to: {
moreThanOneDependencyType: true,
// as it's pretty common to have a type import be a type only import
// as it's pretty common to have a type import be a type only import
// _and_ (e.g.) a devDependency - don't consider type-only dependency
// types for this rule
dependencyTypesNot: ["type-only"]
}
dependencyTypesNot: ["type-only"],
},
},
/* rules you might want to tweak for your specific situation: */
{
name: 'not-to-spec',
name: "not-to-spec",
comment:
'This module depends on a spec (test) file. The sole responsibility of a spec file is to test code. ' +
"This module depends on a spec (test) file. The sole responsibility of a spec file is to test code. " +
"If there's something in a spec that's of use to other modules, it doesn't have that single " +
'responsibility anymore. Factor it out into (e.g.) a separate utility/ helper or a mock.',
severity: 'error',
"responsibility anymore. Factor it out into (e.g.) a separate utility/ helper or a mock.",
severity: "error",
from: {},
to: {
path: '[.](?:spec|test)[.](?:js|mjs|cjs|jsx|ts|mts|cts|tsx)$'
}
path: "[.](?:spec|test)[.](?:js|mjs|cjs|jsx|ts|mts|cts|tsx)$",
},
},
{
name: 'not-to-dev-dep',
severity: 'error',
name: "not-to-dev-dep",
severity: "error",
comment:
"This module depends on an npm package from the 'devDependencies' section of your " +
'package.json. It looks like something that ships to production, though. To prevent problems ' +
"package.json. It looks like something that ships to production, though. To prevent problems " +
"with npm packages that aren't there on production declare it (only!) in the 'dependencies'" +
'section of your package.json. If this module is development only - add it to the ' +
'from.pathNot re of the not-to-dev-dep rule in the dependency-cruiser configuration',
"section of your package.json. If this module is development only - add it to the " +
"from.pathNot re of the not-to-dev-dep rule in the dependency-cruiser configuration",
from: {
path: '^(src)',
pathNot: [
'[.](?:spec|test|setup|script)[.](?:js|mjs|cjs|jsx|ts|mts|cts|tsx)$',
'src/test'
]
path: "^(src)",
pathNot: ["[.](?:spec|test|setup|script)[.](?:js|mjs|cjs|jsx|ts|mts|cts|tsx)$", "./test"],
},
to: {
dependencyTypes: [
'npm-dev',
],
dependencyTypes: ["npm-dev"],
// type only dependencies are not a problem as they don't end up in the
// production code or are ignored by the runtime.
dependencyTypesNot: [
'type-only'
],
pathNot: [
'node_modules/@types/'
]
}
dependencyTypesNot: ["type-only"],
pathNot: ["node_modules/@types/"],
},
},
{
name: 'optional-deps-used',
severity: 'info',
name: "optional-deps-used",
severity: "info",
comment:
"This module depends on an npm package that is declared as an optional dependency " +
"in your package.json. As this makes sense in limited situations only, it's flagged here. " +
@ -183,33 +165,28 @@ module.exports = {
"dependency-cruiser configuration.",
from: {},
to: {
dependencyTypes: [
'npm-optional'
]
}
dependencyTypes: ["npm-optional"],
},
},
{
name: 'peer-deps-used',
name: "peer-deps-used",
comment:
"This module depends on an npm package that is declared as a peer dependency " +
"in your package.json. This makes sense if your package is e.g. a plugin, but in " +
"other cases - maybe not so much. If the use of a peer dependency is intentional " +
"add an exception to your dependency-cruiser configuration.",
severity: 'warn',
severity: "warn",
from: {},
to: {
dependencyTypes: [
'npm-peer'
]
}
}
dependencyTypes: ["npm-peer"],
},
},
],
options: {
/* Which modules not to follow further when encountered */
doNotFollow: {
/* path: an array of regular expressions in strings to match against */
path: ['node_modules']
path: ["node_modules"],
},
/* Which modules to exclude */
@ -271,7 +248,7 @@ module.exports = {
defaults to './tsconfig.json'.
*/
tsConfig: {
fileName: 'tsconfig.json'
fileName: "tsconfig.json",
},
/* Webpack configuration to use to get resolve options from.
@ -345,7 +322,7 @@ module.exports = {
collapses everything in node_modules to one folder deep so you see
the external modules, but their innards.
*/
collapsePattern: 'node_modules/(?:@[^/]+/[^/]+|[^/]+)',
collapsePattern: "node_modules/(?:@[^/]+/[^/]+|[^/]+)",
/* Options to tweak the appearance of your graph.See
https://github.com/sverweij/dependency-cruiser/blob/main/doc/options-reference.md#reporteroptions
@ -367,7 +344,8 @@ module.exports = {
dependency graph reporter (`archi`) you probably want to tweak
this collapsePattern to your situation.
*/
collapsePattern: '^(?:packages|src|lib(s?)|app(s?)|bin|test(s?)|spec(s?))/[^/]+|node_modules/(?:@[^/]+/[^/]+|[^/]+)',
collapsePattern:
"^(?:packages|src|lib(s?)|app(s?)|bin|test(s?)|spec(s?))/[^/]+|node_modules/(?:@[^/]+/[^/]+|[^/]+)",
/* Options to tweak the appearance of your graph. If you don't specify a
theme for 'archi' dependency-cruiser will use the one specified in the
@ -375,10 +353,10 @@ module.exports = {
*/
// theme: { },
},
"text": {
"highlightFocused": true
text: {
highlightFocused: true,
},
}
}
},
},
};
// generated: dependency-cruiser@16.3.3 on 2024-06-13T23:26:36.169Z

12
.editorconfig Normal file
View file

@ -0,0 +1,12 @@
# EditorConfig is awesome: https://EditorConfig.org
# top-most EditorConfig file
root = true
[src/*.{js,ts}]
indent_style = space
indent_size = 2
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true

View file

@ -1,6 +1,6 @@
VITE_BYPASS_LOGIN=0
VITE_BYPASS_TUTORIAL=0
VITE_SERVER_URL=https://api.beta.pokerogue.net
VITE_SERVER_URL=https://apibeta.pokerogue.net
VITE_DISCORD_CLIENT_ID=1248062921129459756
VITE_GOOGLE_CLIENT_ID=955345393540-2k6lfftf0fdnb0krqmpthjnqavfvvf73.apps.googleusercontent.com
VITE_I18N_DEBUG=1
VITE_I18N_DEBUG=0

View file

@ -3,5 +3,5 @@ VITE_BYPASS_TUTORIAL=0
VITE_SERVER_URL=http://localhost:8001
VITE_DISCORD_CLIENT_ID=1234567890
VITE_GOOGLE_CLIENT_ID=1234567890
VITE_I18N_DEBUG=1
VITE_I18N_DEBUG=0
VITE_PORT=8000

1
.gitattributes vendored
View file

@ -1,2 +1,3 @@
# Auto detect text files and perform LF normalization
* text=auto
* -crlf

49
.github/CODEOWNERS vendored
View file

@ -4,42 +4,19 @@
* @pagefaultgames/junior-dev-team
# github actions/templates etc. - Dev Leads
/.github @pagefaultgames/dev-leads
/.github @pagefaultgames/senior-dev-team
# --- Translations ---
# Art Team
/public/**/*.png @pagefaultgames/art-team
/public/**/*.json @pagefaultgames/art-team
/public/images @pagefaultgames/art-team
/public/battle-anims @pagefaultgames/art-team
# all translations - Translation Leads
/src/locales @pagefaultgames/translation-leads
# Audio files
*.mp3 @pagefaultgames/composer-team
*.wav @pagefaultgames/composer-team
*.ogg @pagefaultgames/composer-team
/public/audio @pagefaultgames/composer-team
# Catalan (Spain/Spanish)
/src/locales/ca_ES @pagefaultgames/catalan-translation-team
# German
/src/locales/de @pagefaultgames/german-translation-team
# English
/src/locales/en @pagefaultgames/english-translation-team
# Spanish
/src/locales/es @pagefaultgames/spanish-translation-team
# French
/src/locales/fr @pagefaultgames/french-translation-team
# Italian
/src/locales/it @pagefaultgames/italian-translation-team
# Japenese
/src/locales/ja @pagefaultgames/japanese-translation-team
# Korean
/src/locales/ko @pagefaultgames/korean-translation-team
# Brasilian (Brasil/Portuguese)
/src/locales/pt_BR @pagefaultgames/portuguese_br-translation-team
# Chinese (simplified)
/src/locales/zh_CN @pagefaultgames/chinese_simplified-translation-team
# Chinese (traditional)
/src/locales/zh_TW @pagefaultgames/chinese_traditional-translation-team
# Balance Files; contain actual code logic and must also be owned by dev team
/src/data/balance @pagefaultgames/balance-team @pagefaultgames/junior-dev-team

2
.github/FUNDING.yml vendored
View file

@ -1 +1 @@
github: patapancakes
github: pagefaultgames

View file

@ -1,6 +1,7 @@
name: Bug Report
description: Create a report to help us improve
title: "[Bug] "
type: bug
labels: ["Bug", "Triage"]
body:
- type: markdown

View file

@ -1,6 +1,7 @@
name: Feature Request
description: Suggest an idea for this project
title: "[Feature] "
type: 'feature'
labels: ["Enhancement", "Triage"]
body:
- type: markdown

View file

@ -1,37 +1,76 @@
<!-- Make sure the title includes categorization (i.e. [Bug], [QoL], [Localization]) -->
<!-- Make sure that this PR is not overlapping with someone else's work -->
<!-- Please try to keep the PR self-contained (and small) -->
<!-- (Once you have read these comments, you are free to remove them) -->
<!-- Feel free to look at other PRs for examples -->
<!--
Make sure the title includes categorization (choose the one that best fits):
- [Bug]: If the PR is primarily a bug fix
- [Move]: If a move has new or changed functionality
- [Ability]: If an ability has new or changed functionality
- [Item]: For new or modified items
- [Mystery]: For new or modified Mystery Encounters
- [Test]: If the PR is primarily adding or modifying tests
- [UI/UX]: If the PR is changing UI/UX elements
- [Audio]: If the PR is adding or changing music/sfx
- [Sprite]: If the PR is adding or changing sprites
- [Balance]: If the PR is related to game balance
- [Challenge]: If the PR is adding or modifying challenges
- [Refactor]: If the PR is primarily rewriting existing code
- [Docs]: If the PR is just adding or modifying documentation (such as tsdocs/code comments)
- [GitHub]: For changes to GitHub workflows/templates/etc
- [Misc]: If no other category fits the PR
-->
<!--
Make sure that this PR is not overlapping with someone else's work
Please try to keep the PR self-contained (and small)
-->
## What are the changes the user will see?
<!-- Summarize what are the changes from a user perspective on the application -->
## Why am I making these changes?
<!-- Explain why you decided to introduce these changes -->
<!-- Does it come from an issue or another PR? Please link it -->
<!-- Explain why you believe this can enhance user experience -->
<!--
Explain why you decided to introduce these changes
Does it come from an issue or another PR? Please link it
Explain why you believe this can enhance user experience
-->
<!--
If there are existing GitHub issues related to the PR that would be fixed,
you can add "Fixes #[issue number]" (ie: "Fixes #1234") to link an issue to your PR
so that it will automatically be closed when the PR is merged.
-->
## What are the changes from a developer perspective?
<!-- Explicitly state what are the changes introduced by the PR -->
<!-- You can make use of a comparison between what was the state before and after your PR changes -->
<!--
Explicitly state what are the changes introduced by the PR
You can make use of a comparison between what was the state before and after your PR changes
Ex: What files have been changed? What classes/functions/variables/etc have been added or changed?
-->
### Screenshots/Videos
<!-- If your change is changing anything on the user experience, please provide visual proofs of it -->
<!-- Please take screenshots/videos before and after your changes, to show what is brought by this PR -->
## Screenshots/Videos
<!--
If your changes are changing anything on the user experience, please provide visual proofs of it
Please take screenshots/videos before and after your changes, to show what is brought by this PR
-->
## How to test the changes?
<!-- How can a reviewer test your changes once they check out on your branch? -->
<!-- Did you just make use of the `src/overrides.ts` file? -->
<!-- Did you introduce any automated tests? -->
<!-- Do the reviewer need to do something special in order to test your change? -->
<!--
How can a reviewer test your changes once they check out on your branch?
Did you make use of the `src/overrides.ts` file?
Did you introduce any automated tests?
Do the reviewers need to do something special in order to test your changes?
-->
## Checklist
- [ ] **I'm using `beta` as my base branch**
- [ ] There is no overlap with another PR?
- [ ] The PR is self-contained and cannot be split into smaller PRs?
- [ ] Have I provided a clear explanation of the changes?
- [ ] Have I considered writing automated tests for the issue?
- [ ] If I have text, did I make it translatable and add a key in the English locale file(s)?
- [ ] Have I tested the changes (manually)?
- [ ] Are all unit tests still passing? (`npm run test`)
- [ ] Are the changes visual?
- [ ] Have I provided screenshots/videos of the changes?
- [ ] Have I tested the changes manually?
- [ ] Are all unit tests still passing? (`npm run test`)
- [ ] Have I created new automated tests (`npm run create-test`) or updated existing tests related to the PR's changes?
- [ ] Have I provided screenshots/videos of the changes (if applicable)?
- [ ] Have I made sure that any UI change works for both UI themes (default and legacy)?
Are there any localization additions or changes? If so:
- [ ] Has a locales PR been created on the [locales](https://github.com/pagefaultgames/pokerogue-locales) repo?
- [ ] If so, please leave a link to it here:
- [ ] Has the translation team been contacted for proofreading/translation?

View file

@ -11,6 +11,8 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: 'recursive'
- uses: actions/setup-node@v4
with:
node-version: "20"

View file

@ -1,8 +1,12 @@
name: Deploy
name: Deploy Main
on:
push: {}
pull_request: {}
push:
branches:
- main
pull_request:
branches:
- main
jobs:
deploy:
@ -10,6 +14,8 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: 'recursive'
- uses: actions/setup-node@v4
with:
node-version: "20"
@ -20,7 +26,7 @@ jobs:
env:
NODE_ENV: production
- name: Set up SSH
if: github.event_name == 'push' && github.ref_name == github.event.repository.default_branch
if: github.event_name == 'push' && github.ref_name == 'main'
run: |
mkdir ~/.ssh
echo "${{ secrets.SSH_PUBLIC_KEY }}" > ~/.ssh/id_ed25519.pub
@ -28,12 +34,12 @@ jobs:
chmod 600 ~/.ssh/*
ssh-keyscan -H ${{ secrets.SSH_HOST }} >> ~/.ssh/known_hosts
- name: Deploy build on server
if: github.event_name == 'push' && github.ref_name == github.event.repository.default_branch
if: github.event_name == 'push' && github.ref_name == 'main'
run: |
rsync --del --no-times --checksum -vrm dist/* ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }}:${{ secrets.DESTINATION_DIR }}
ssh -t ${{ secrets.SSH_USER }}@${{ secrets.SSH_HOST }} "~/prmanifest --inpath ${{ secrets.DESTINATION_DIR }} --outpath ${{ secrets.DESTINATION_DIR }}/manifest.json"
- name: Purge Cloudflare Cache
if: github.event_name == 'push' && github.ref_name == github.event.repository.default_branch
if: github.event_name == 'push' && github.ref_name == 'main'
id: purge-cache
uses: NathanVaughn/actions-cloudflare-purge@v3.1.0
with:

View file

@ -1,35 +0,0 @@
name: ESLint
on:
# Trigger the workflow on push or pull request,
# but only for the main branch
push:
branches:
- main # Trigger on push events to the main branch
- beta # Trigger on push events to the beta branch
pull_request:
branches:
- main # Trigger on pull request events targeting the main branch
- beta # Trigger on pull request events targeting the beta branch
merge_group:
types: [checks_requested]
jobs:
run-linters: # Define a job named "run-linters"
name: Run linters # Human-readable name for the job
runs-on: ubuntu-latest # Specify the latest Ubuntu runner for the job
steps:
- name: Check out Git repository # Step to check out the repository
uses: actions/checkout@v4 # Use the checkout action version 4
- name: Set up Node.js # Step to set up Node.js environment
uses: actions/setup-node@v4 # Use the setup-node action version 4
with:
node-version: 20 # Specify Node.js version 20
- name: Install Node.js dependencies # Step to install Node.js dependencies
run: npm ci # Use 'npm ci' to install dependencies
- name: eslint # Step to run linters
run: npm run eslint-ci

View file

@ -26,6 +26,7 @@ jobs:
- name: Checkout repository for Typedoc
uses: actions/checkout@v3
with:
submodules: 'recursive'
path: pokerogue_docs
- name: Install OS package

40
.github/workflows/quality.yml vendored Normal file
View file

@ -0,0 +1,40 @@
name: Biome Code Quality
on:
# Trigger the workflow on push or pull request,
# but only for the main branch
push:
branches:
- main # Trigger on push events to the main branch
- beta # Trigger on push events to the beta branch
pull_request:
branches:
- main # Trigger on pull request events targeting the main branch
- beta # Trigger on pull request events targeting the beta branch
merge_group:
types: [checks_requested]
jobs:
run-linters: # Define a job named "run-linters"
name: Run linters # Human-readable name for the job
runs-on: ubuntu-latest # Specify the latest Ubuntu runner for the job
steps:
- name: Check out Git repository # Step to check out the repository
uses: actions/checkout@v4 # Use the checkout action version 4
with:
submodules: 'recursive'
- name: Set up Node.js # Step to set up Node.js environment
uses: actions/setup-node@v4 # Use the setup-node action version 4
with:
node-version-file: '.nvmrc'
- name: Install Node.js dependencies # Step to install Node.js dependencies
run: npm ci # Use 'npm ci' to install dependencies
- name: eslint # Step to run linters
run: npm run eslint-ci
- name: Lint with Biome # Step to run linters
run: npm run biome-ci

View file

@ -20,6 +20,8 @@ jobs:
steps:
- name: Check out Git repository
uses: actions/checkout@v4
with:
submodules: 'recursive'
- name: Set up Node.js
uses: actions/setup-node@v4
with:
@ -27,4 +29,4 @@ jobs:
- name: Install Node.js dependencies
run: npm ci
- name: Run tests
run: npx vitest --project ${{ inputs.project }} --shard=${{ inputs.shard }}/${{ inputs.totalShards }} ${{ !runner.debug && '--silent' || '' }}
run: npx vitest --project ${{ inputs.project }} --no-isolate --shard=${{ inputs.shard }}/${{ inputs.totalShards }} ${{ !runner.debug && '--silent' || '' }}

View file

@ -15,28 +15,8 @@ on:
types: [checks_requested]
jobs:
pre-test:
name: Run Pre-test
runs-on: ubuntu-latest
steps:
- name: Check out Git repository
uses: actions/checkout@v4
with:
path: tests-action
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: 20
- name: Install Node.js dependencies
working-directory: tests-action
run: npm ci
- name: Run Pre-test
working-directory: tests-action
run: npx vitest run --project pre ${{ !runner.debug && '--silent' || '' }}
run-tests:
name: Run Tests
needs: [pre-test]
strategy:
matrix:
shard: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

4
.gitignore vendored
View file

@ -41,3 +41,7 @@ coverage
/dependency-graph.svg
/.vs
# Script outputs
./*.csv

3
.gitmodules vendored Normal file
View file

@ -0,0 +1,3 @@
[submodule "public/locales"]
path = public/locales
url = https://github.com/pagefaultgames/pokerogue-locales

1
.nvmrc Normal file
View file

@ -0,0 +1 @@
v20.13.1

624
CREDITS.md Normal file
View file

@ -0,0 +1,624 @@
# 🎵 Music
## BGM
- Pokémon Mystery Dungeon: Explorers of Sky
- Arata Iiyoshi
- Hideki Sakamoto
- Keisuke Ito
- Ken-ichi Saito
- Yoshihiro Maeda
- Pokémon Black/White
- Go Ichinose
- Hitomi Sato
- Shota Kageyama
- Pokémon Mystery Dungeon: Rescue Team DX
- Keisuke Ito
- Arata Iiyoshi
- Atsuhiro Ishizuna
- Pokémon HeartGold/SoulSilver
- Pokémon Black/White 2
- Pokémon X/Y
- Pokémon Omega Ruby/Alpha Sapphire
- Pokémon Sun/Moon
- Pokémon Ultra Sun/Ultra Moon
- Pokémon Sword/Shield
- Pokémon Legends: Arceus
- Pokémon Scarlet/Violet
- Firel (Custom Graveyard, Ice Cave, Laboratory, Metropolis, Plains, Power Plant, Seabed, Space, and Volcano biome music)
- Lmz (Custom Ancient Ruins, Jungle, and Lake biome music)
- Andr06 (Custom Forest, Slum and Sea biome music)
- _tresnoir
- unveiler
## Sound Effects
- Pokémon Emerald
- Pokémon Black/White
# 🎨 Art
## Backgrounds
- Squip (Paid Commissions)
- Contributions by Someonealive-QN
## UI
- GAMEFREAK
- LJ Birdman
## Pagefault Games Intro
- Spectremint
## Game Logo
- Gonstar (Paid Commission)
## Trainer Sprites
- GAMEFREAK (Pokémon Black/White 2, Pokémon Diamond/Pearl)
- kyledove
- Brumirage
- pkmn_realidea (Paid Commissions)
- IceJkai
- Leparagon
- wormhood
## Mystery Event Sprites
- chrysomelinae
- koda_want_to_sleep
- “🐺Kieran/YJ 🐍” rival_kieran aka thedreadedden
- ImperialSympathizer
- wormhood
- gerolau
- otterwatch
## Trainer Portraits
- pkmn_realidea (Paid Commissions)
## Pokémon Sprites and Animation
In addition to the lists below, please check [the PokéRogue wiki](https://wiki.pokerogue.net/credits:credits) for a more detailed list of Pokémon Sprite credits.
- GAMEFREAK (Pokémon Black/White 2)
- Smogon Sprite Project (Various Artists)
- Skyflyer
- Nolo33
- Ebaru
- EricLostie
- kiriaura
- Caruban
- Sopita_Yorita
- Azrita
- AshnixsLaw
- Hellfire0raptor
- RetroNC
- Franark122k
- OldSoulja
- PKMarioG
- ItsYugen
- lucasomi
- Pkm Sinfonia
- Poki Papillon
- Fleimer_
- bizcoeindoloro
- mangalos810
- selstar
### Static Sprites and Base Shiny Replacements Credits
- AMVictory
- Antiant
- Arhops
- arinoelle
- Arkeis
- aXl
- BananaToast
- Basic Vanillite
- BlackWhiteRobin
- Blaquaza
- Branflakes325
- Brylark
- Buna
- Bynine
- Corson
- Cynda
- “Diashi” diazhi
- Dleep
- doomchaos
- Espeon Scientist
- Farriella
- fishbowlsoul90
- “Follower” rulerofthesea11
- Galifia
- GeoisEvil
- G.E.Z.
- Glustora
- Harrie
- HealnDeal
- Hematite
- HM100
- Ice-cold Claws
- Involuntary Twitch
- “Jay” itsamejay
- KattenK
- KingOfThe-X-Roads
- KyleDove
- Kyleo
- Kyuzeth
- Larryturbo
- Layell
- Legitimate Username
- leParagon
- “LJ” lj_birdman
- Luigi Player
- Madmadness65
- Mega-Pokebattlerz
- Mintly
- mjco
- “Momo” sphinx_sage
- MrDollSteak
- MyMarshlands
- N-Kin
- Noscium
- “Nova” fabunova
- “Omniv” omniv
- paintseagull
- princessofmusic
- PumpkinPastel
- Quanyails
- RadicalCharizard
- RedRooster
- “♂ROMEO⚧” gerolau
- ruleroftheseas11
- SelenaArmorclaw
- “serif” serifaizawa
- Siiilver
- Sleet
- Snivy101
- Speed-X
- Sphex
- Spook
- Squip
- TeraVolt
- TheAetherPlayer
- TheCynicalPoet
- Tooni
- TrainerSplash
- Travis
- Turtleye
- Tyrell D. Barnes
- “Vari” \_vari\_
- Wobblebuns
- WolfPP
- WPS
- Wyverii
- “zan” smtif
- Zerudez
- Z-nogyroP
### Animated Sprites Credits
- Antiant
- arinoelle
- Blaquaza
- Claire Starsword
- Coyotango
- DanEx
- “Diashi” diazhi
- GalacticArtistMuffin
- G.E.Z.
- hexagonereal
- HM100
- Katten
- LeParagon
- localghost
- MallowOut
- mattiwarden
- “Momo” sphinx_sage
- N-Kin
- NoelleMBrooks
- Nyx
- “Omniv” omniv
- princessofmusic
- PumpkinPastel
- RadicalCharizard
- seleccion
- SelenaArmorclaw
- TheAetherPlayer
- Tinkatooni
- Typhlito
- uppa
- “Vari” \_vari\_
### Rare/Epic Shiny Variants Credits
- “Andr06” andr06
- “Appo” appo
- “Ashhawk” k_redacted
- “Auralite” _auralite
- “Awesome_Soul” awesome_soul
- “Bagon” bagonganda
- “Bibble” nuts_.
- “BloomOfWoods” bloomofwoods
- “Buge” buge
- “bun” bunove
- “bukie” bukie
- cameranian
- “Caramel” saltedcarriemel
- “Chocolate Niblets” choconibs
- “CKC” ckc_
- “ClawsHDi” clawshdi
- “Clown Princess” clown_princess
- “Cmac2173” cmac2173
- “Corsola” corsola_bandit
- “Criminon” criminon
- “Cryptican Gogoat Enthusiast” crypticanexe
- “Diashi” diazhi
- “deviant.daffodil, bug enthusiast” deviant.daffodil
- “DigitalVaporeon” digitalvaporeon
- dingosig
- “Eku” ekusas00
- “Elefante”
- “Esca” colossalsquid
- “Folf” folf.
- “Follower” ruleroftheseas11
- “Fontbane” fontbane
- “Gallow” gallowhound
- “Giojoe” giojoe10
- “Gonfold” gonfold
- greenninja757
- “Grassy_Storm” grassy_storm
- “GreenMegaMan” greenmegaman
- “GROWL” myflixer.to
- “guy claiming to work on a guide” 7thatlas
- “h. 🍄” letterh.
- “hamez” .hamez
- “Hanniel” hanniel.15
- “ImaginaryNeon” imaginaryneon
- “Jay” itsamejay
- “Jelke” jelke
- kalikimothy
- “🐺Kieran/YJ 🐍” rival_kieran aka thedreadedden
- “Koda” Koda_want_to_sleep
- “Lana” smogonian
- “LJ” lj_birdman
- “Long Girl” docamakesart
- “Lucky” luckyluckylucky
- “MissingNo.” clickonflareblitz
- “Momo” sphinx_sage
- monkehestman
- “Nexxus” nexxus_
- “Nik :3” realniktrustme
- “Nikolatsu”
- “nora” ora.n
- “NOVA” fabunova
- officerporkchops
- “Omniv” omniv
- “Otterwatch” otterwatch_
- “Pandoraz” pandoraz
- “Papa Pepsm An” papapepsman
- “Penguin” peng06
- “Prodigy” lorekeeperprodigy
- “Purpenigma” purpenigma
- “Rage” ragerevival
- “♂ROMEO⚧” gerolau
- “Sagrell D'Arcadia” coffeerequired
- “serif” serifaizawa
- “SillyTopplingGoose” sillytopplinggoose
- “Splash Damage” splashceles
- “Sweg1b01” sweg1b01
- “SyntheGrim” synthegrim
- “TaMenace” tamariontherestless
- “TheTRUEgge” thetruegge
- “Thorn” crownofthorns
- “Togepi” togepimax
- “Toopy” .toopy
- “Tristan” tristan.w
- “Umbreon” umbreon\_.\_
- “Vari” \_vari\_
- “Waasephi”
- wormhood
- “Yep, it's Caio” yepitscaio
- “Ymri” ymri
- “zaccie” zaccie
- “zan” smtif
## Move Animations
- Pokémon Reborn
# ⚖️ Balance
## Balance Team
- damocleas
- Blitzy aka Kazapple
- Cynthia_calliope
- Esca
- Fontbane
- Plasto
- Sethcurry
- Starkrieg
## Past Members
- Swizzo
- Zaccie
## Past Contributors
- chrysomelinae (Mystery Events)
- AsdarDevelops (Mystery Events)
# 💻 Development
## Server Developers
- pancakes aka patapancakes
## Current and former Development Team members
- bennybroseph
- Brain Frog
- CodeTappert
- Dakurei
- flx-sta
- frutescens
- Greenlamp
- ImperialSympathizer
- innerthunder
- KimJeongSun
- Madmadness65
- Moka
- Navori
- NightKev
- Opaquer
- OrangeRed
- Sam aka Flashfyre (initial developer, started PokéRogue)
- SirzBenjie
- sirzento
- SN34KZ
- Swain aka torranx
- Temp aka Tempo-anon
- Walker
- Wlowscha (aka Curbio)
- Xavion
## Bug/Issue Managers
- Daleks
- Lily
- PigeonBar
- Snailman
## Other Code Contributors
- Admiral-Billy
- allen925
- arColm
- Arxalc
- AsdarDevelops
- Corrade
- DustinLin
- ElizaAlex
- EmberCM
- EmoUsedHM01
- EvasiveAce
- Fontbane
- francktrouillez
- FredeX
- geeilhan
- happinyz
- hayuna
- InfernoVulpix
- j-diefenbach
- jaimefd
- JakubHanko
- JonStudders
- karl-police
- lucfd
- Lugiadrien
- madibye
- mattrossdev
- mcmontag
- meepen
- Mewtwo2387
- muscode
- Neverblade
- NxKarim
- okimin
- PigeonBar
- PrabbyDD
- prateau
- prime-dialga
- PyGaVS
- rationality6
- RedstonewolfX
- ReneGV
- rnicar245
- schmidtc1
- shayebeadling
- snoozbuster
- sodaMelon
- td76099
- Vassiat
- Xiaphear
- zaccie
- zacharied
- Zé Ricardo
# 🌎 Translation
## In-Game Translators
### 🇩🇪 German (de)
- CodeTappert
### 🇪🇸 Spanish (es-ES)
- Dan Stevenson
- Javi
- Lily Alterni
- Qyxgames
### 🇫🇷 French (fr)
- Lugiadrien
### 🇮🇹 Italian (it)
- Nicus
### 🇯🇵 Japanese (ja)
- 6mozuke9
- Chapybara
- PeachFresca
### 🇰🇷 Korean (ko)
- Enoch
- KimJeongSun
- Returntoice
- sodamelon
### 🇧🇷 Portuguese (pt-BR)
- Zé Ricardo
### 🇨🇳 Chinese (zh-CN)
- dddsenic
- mercurius
- VittorioVeneto
- Yonmaru
### 🇹🇼 Chinese (zh-TW)
- mercurius
- Seagull
### Past contributors
- Asdar (es-ES)
- Rafa (es-ES)
- GINK-SS (ko)
- prostagma (pt-BR)
- Ei (zh-TW)
## Wiki Translators
### 🇪🇸 Spanish (es-ES)
- victorcooler
### 🇫🇷 French (fr)
- Evan
- Mitsue
- Papier
- Sangara
- Voltarix
### 🇮🇹 Italian (it)
- Purce
- T-reds
### 🇰🇷 Korean (ko)
- LeKaaN
- Returntoice
- sodamelon
### 🇵🇱 Polish (pl)
- Talo
### 🇧🇷 Portuguese (pt-BR)
- Beast
- Sushi
- Zé Ricardo
### 🇨🇳 Chinese (zh-CN)
- jw-0-
### Past contributors
- Dietaube (de)
- Gnorpelltroll (de)
- xRegix (de)
- Broly Ikari (fr)
- Leo Edgar_Zimmer (fr)
- Telor (fr)
- dorri (ko)
- Little Moder_eldenring (ko)
- Andy (zh-CN)
- Black Feather (zh-CN)
- itschili (zh-CN)
- RimKnight (zh-CN)
- Yubari (zh-CN)
## 🇺🇸 English Proofreaders
- Cheyu
- Faust
- HaywiredUp
- Irridescence
- Ke'ahi
- Louie
- Nully
- PeD
- The Programmer
### Past contributors
- I...
# 📰 Wiki
## Wiki Head
- H.A.R.V.
## Wiki Lead
- Sangara
- Zac
- Smew
- Brain Frog
- Hannah
## Editor
- Prodigy
- Akuma
- Dan Gioia
- Shimizoki
- Stave
- NalysArbur
- Ceimir
- Solanum Tuberosum
- Pom
## Artist
- dub
- SmashMania
- Wren
- Lugiadrien
## Contributor
- Daleks <3
- Inferno Vulpix
- Embri
- Nekod
- P0kemonY
- Scoom
- BlueVaron
# ☎️ Discord
## Head Moderator
- leah
## Senior Moderators
- Solanum Tuberosum
- Madmadness65
- Necrowmancer
- lana
## Moderators
- Sethcurry
## Junior Moderators
- chacolah
- ChaosGrimmon
- Cynthia
- Kat
- lyn
- Pom
# ✨ Special Thanks
## Reddit Moderators
- TheZigglez
- Vicksin
- Sapphire
- Javi
- roi
## External Tools
- Ydarissep (creator of the now defunct "Yda's Dex")
- Admiral-Billy (Offline App - Desktop)
- Red aka StonedModder (iOS App)

111
README.md
View file

@ -3,118 +3,51 @@
PokéRogue is a browser based Pokémon fangame heavily inspired by the roguelite genre. Battle endlessly while gathering stacking items, exploring many different biomes, fighting trainers, bosses, and more!
# Contributing
## 🛠️ Development
If you have the motivation and experience with Typescript/Javascript (or are willing to learn) please feel free to fork the repository and make pull requests with contributions. If you don't know what to work on but want to help, reference the below **To-Do** section or the **#feature-vote** channel in the discord.
### 💻 Environment Setup
#### Prerequisites
- node: 20.13.1
- npm: [how to install](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm)
#### Running Locally
1. Clone the repo and in the root directory run `npm install`
- *if you run into any errors, reach out in the **#dev-corner** channel in discord*
2. Run `npm run start:dev` to locally run the project in `localhost:8000`
#### Linting
We're using ESLint as our common linter and formatter. It will run automatically during the pre-commit hook but if you would like to manually run it, use the `npm run eslint` script.
We're using Biome as our common linter and formatter. It will run automatically during the pre-commit hook but if you would like to manually run it, use the `npm run biome` script. To view the complete rules, check out the [biome.jsonc](./biome.jsonc) file.
### 📚 Documentation
You can find the auto-generated documentation [here](https://pagefaultgames.github.io/pokerogue/main/index.html).
For information on enemy AI, check out the [enemy-ai.md](./docs/enemy-ai.md) file.
For detailed guidelines on documenting your code, refer to the [comments.md](./docs/comments.md) file.
### ❔ FAQ
**How do I test a new _______?**
- In the `src/overrides.ts` file there are overrides for most values you'll need to change for testing
**How do I retrieve the translations?**
- The translations were moved to the [dedicated translation repository](https://github.com/pagefaultgames/pokerogue-locales) and are now applied as a submodule in this project.
- The command to retrieve the translations is `git submodule update --init --recursive`. If you still struggle to get it working, please reach out to #dev-corner channel in Discord.
## 🪧 To Do
Check out [Github Issues](https://github.com/pagefaultgames/pokerogue/issues) to see how can you help us!
# 📝 Credits
> If this project contains assets you have produced and you do not see your name here, **please** reach out.
>
> If this project contains assets you have produced and you do not see your name, **please** reach out, either [here on GitHub](https://github.com/pagefaultgames/pokerogue/issues/new) or via [Discord](https://discord.gg/pokerogue).
### 🎵 BGM
- Pokémon Mystery Dungeon: Explorers of Sky
- Arata Iiyoshi
- Hideki Sakamoto
- Keisuke Ito
- Ken-ichi Saito
- Yoshihiro Maeda
- Pokémon Black/White
- Go Ichinose
- Hitomi Sato
- Shota Kageyama
- Pokémon Mystery Dungeon: Rescue Team DX
- Keisuke Ito
- Arata Iiyoshi
- Atsuhiro Ishizuna
- Pokémon HeartGold/SoulSilver
- Pokémon Black/White 2
- Pokémon X/Y
- Pokémon Omega Ruby/Alpha Sapphire
- Pokémon Sun/Moon
- Pokémon Ultra Sun/Ultra Moon
- Pokémon Sword/Shield
- Pokémon Legends: Arceus
- Pokémon Scarlet/Violet
- Firel (Custom Ice Cave, Laboratory, Metropolis, Plains, Power Plant, Seabed, Space, and Volcano biome music)
- Lmz (Custom Ancient Ruins, Jungle, and Lake biome music)
- Andr06 (Custom Slum and Sea biome music)
### 🎵 Sound Effects
- Pokémon Emerald
- Pokémon Black/White
### 🎨 Backgrounds
- Squip (Paid Commissions)
- Contributions by Someonealive-QN
### 🎨 UI
- GAMEFREAK
- LJ Birdman
### 🎨 Pagefault Games Intro
- Spectremint
### 🎨 Game Logo
- Gonstar (Paid Commission)
### 🎨 Trainer Sprites
- GAMEFREAK (Pokémon Black/White 2, Pokémon Diamond/Pearl)
- kyledove
- Brumirage
- pkmn_realidea (Paid Commissions)
- IceJkai
### 🎨 Trainer Portraits
- pkmn_realidea (Paid Commissions)
### 🎨 Pokemon Sprites and Animation
- GAMEFREAK (Pokémon Black/White 2)
- Smogon Sprite Project (Various Artists)
- Skyflyer
- Nolo33
- Ebaru
- EricLostie
- KingOfThe-X-Roads
- kiriaura
- Caruban
- Sopita_Yorita
- Azrita
- AshnixsLaw
- Hellfire0raptor
- RetroNC
- Franark122k
- OldSoulja
- PKMarioG
- ItsYugen
- lucasomi
- Pkm Sinfonia
- Poki Papillon
- Fleimer_
- bizcoeindoloro
- mangalos810
- Involuntary-Twitch
- selstar
- koda_want_to_sleep
### 🎨 Move Animations
- Pokémon Reborn
Thank you to all the wonderful people that have contributed to the PokéRogue project! You can find the credits [here](./CREDITS.md).

107
biome.jsonc Normal file
View file

@ -0,0 +1,107 @@
{
"$schema": "https://biomejs.dev/schemas/1.9.4/schema.json",
"vcs": {
"enabled": false,
"clientKind": "git",
"useIgnoreFile": true,
"defaultBranch": "beta"
},
"formatter": {
"enabled": true,
"useEditorconfig": true,
"indentStyle": "space",
"ignore": ["src/enums/*", "src/data/balance/*"],
"lineWidth": 120
},
"files": {
"ignoreUnknown": true,
// Adding folders to the ignore list is GREAT for performance because it prevents biome from descending into them
// and having to verify whether each individual file is ignored
"ignore": [
"**/*.d.ts",
"dist/*",
"build/*",
"coverage/*",
"public/*",
".github/*",
"node_modules/*",
".vscode/*",
"*.css", // TODO?
"*.html", // TODO?
"src/overrides.ts",
// TODO: these files are too big and complex, ignore them until their respective refactors
"src/data/moves/move.ts",
"src/data/ability.ts",
"src/field/pokemon.ts",
// this file is just too big:
"src/data/balance/tms.ts"
]
},
"organizeImports": { "enabled": false },
"linter": {
"ignore": [
"src/phases/move-effect-phase.ts" // TODO: unignore after move-effect-phase refactor
],
"enabled": true,
"rules": {
"recommended": true,
"correctness": {
"noUndeclaredVariables": "off",
"noUnusedVariables": "error",
"noSwitchDeclarations": "warn", // TODO: refactor and make this an error
"noVoidTypeReturn": "warn", // TODO: Refactor and make this an error
"noUnusedImports": "error"
},
"style": {
"noVar": "error",
"useEnumInitializers": "off",
"useBlockStatements": "error",
"useConst": "error",
"useImportType": "error",
"noNonNullAssertion": "off", // TODO: Turn this on ASAP and fix all non-null assertions
"noParameterAssign": "off",
"useExponentiationOperator": "off",
"useDefaultParameterLast": "off", // TODO: Fix spots in the codebase where this flag would be triggered, and then enable
"useSingleVarDeclarator": "off",
"useNodejsImportProtocol": "off",
"useTemplate": "off" // string concatenation is faster: https://stackoverflow.com/questions/29055518/are-es6-template-literals-faster-than-string-concatenation
},
"suspicious": {
"noDoubleEquals": "error",
"noExplicitAny": "off",
"noAssignInExpressions": "off",
"noPrototypeBuiltins": "off",
"noFallthroughSwitchClause": "off",
"noImplicitAnyLet": "info", // TODO: Refactor and make this an error
"noRedeclare": "off", // TODO: Refactor and make this an error
"noGlobalIsNan": "off",
"noAsyncPromiseExecutor": "warn" // TODO: Refactor and make this an error
},
"complexity": {
"noExcessiveCognitiveComplexity": "warn",
"useLiteralKeys": "off",
"noForEach": "off", // Foreach vs for of is not that simple.
"noUselessSwitchCase": "off", // Explicit > Implicit
"noUselessConstructor": "warn", // TODO: Refactor and make this an error
"noBannedTypes": "warn" // TODO: Refactor and make this an error
}
}
},
"javascript": {
"formatter": { "quoteStyle": "double", "arrowParentheses": "asNeeded" }
},
"overrides": [
{
"include": ["test/**/*.test.ts"],
"javascript": { "globals": [] },
"linter": {
"rules": {
"performance": {
"noDelete": "off"
}
}
}
}
]
}

View file

@ -1,9 +1,7 @@
/**
* This script creates a test boilerplate file for a move or ability.
* @param {string} type - The type of test to create. Either "move", "ability",
* or "item".
* @param {string} fileName - The name of the file to create.
* @example npm run create-test move tackle
* This script creates a test boilerplate file in the appropriate
* directory based on the type selected.
* @example npm run create-test
*/
import fs from "fs";
@ -33,8 +31,9 @@ async function promptTestType() {
if (typeAnswer.selectedOption === "EXIT") {
console.log("Exiting...");
return process.exit();
} else if (!typeChoices.includes(typeAnswer.selectedOption)) {
console.error('Please provide a valid type ("move", "ability", or "item")!');
}
if (!typeChoices.includes(typeAnswer.selectedOption)) {
console.error(`Please provide a valid type (${typeChoices.join(", ")})!`);
return await promptTestType();
}
@ -51,7 +50,7 @@ async function promptFileName(selectedType) {
{
type: "input",
name: "userInput",
message: `Please provide a file name for the ${selectedType} test:`,
message: `Please provide the name of the ${selectedType}:`,
},
]);
@ -76,33 +75,33 @@ async function runInteractive() {
const fileName = fileNameAnswer.userInput
.replace(/-+/g, "_") // Convert kebab-case (dashes) to underscores
.replace(/([a-z])([A-Z])/g, "$1_$2") // Convert camelCase to snake_case
.replace(/\s+/g, '_') // Replace spaces with underscores
.replace(/\s+/g, "_") // Replace spaces with underscores
.toLowerCase(); // Ensure all lowercase
// Format the description for the test case
const formattedName = fileName.replace(/_/g, " ").replace(/\b\w/g, (char) => char.toUpperCase());
const formattedName = fileName.replace(/_/g, " ").replace(/\b\w/g, char => char.toUpperCase());
// Determine the directory based on the type
let dir;
let description;
switch (type) {
case "move":
dir = path.join(__dirname, "src", "test", "moves");
dir = path.join(__dirname, "test", "moves");
description = `Moves - ${formattedName}`;
break;
case "ability":
dir = path.join(__dirname, "src", "test", "abilities");
dir = path.join(__dirname, "test", "abilities");
description = `Abilities - ${formattedName}`;
break;
case "item":
dir = path.join(__dirname, "src", "test", "items");
dir = path.join(__dirname, "test", "items");
description = `Items - ${formattedName}`;
break;
case "mystery encounter":
dir = path.join(__dirname, "src", "test", "mystery-encounter", "encounters");
dir = path.join(__dirname, "test", "mystery-encounter", "encounters");
description = `Mystery Encounter - ${formattedName}`;
break;
default:
console.error('Invalid type. Please use "move", "ability", or "item".');
console.error(`Invalid type. Please use one of the following: ${typeChoices.join(", ")}.`);
process.exit(1);
}
@ -110,9 +109,9 @@ async function runInteractive() {
const content = `import { Abilities } from "#enums/abilities";
import { Moves } from "#enums/moves";
import { Species } from "#enums/species";
import GameManager from "#test/utils/gameManager";
import GameManager from "#test/testUtils/gameManager";
import Phaser from "phaser";
import { afterEach, beforeAll, beforeEach, describe, it, expect } from "vitest";
import { afterEach, beforeAll, beforeEach, describe, expect, it } from "vitest";
describe("${description}", () => {
let phaserGame: Phaser.Game;
@ -131,15 +130,22 @@ describe("${description}", () => {
beforeEach(() => {
game = new GameManager(phaserGame);
game.override
.moveset([Moves.SPLASH])
.moveset([ Moves.SPLASH ])
.ability(Abilities.BALL_FETCH)
.battleType("single")
.disableCrits()
.enemySpecies(Species.MAGIKARP)
.enemyAbility(Abilities.BALL_FETCH)
.enemyMoveset(Moves.SPLASH);
});
it("test case", async () => {
// await game.classicMode.startBattle([Species.MAGIKARP]);
// game.move.select(Moves.SPLASH);
it("should do X", async () => {
await game.classicMode.startBattle([ Species.FEEBAS ]);
game.move.select(Moves.SPLASH);
await game.phaseInterceptor.to("BerryPhase");
expect(true).toBe(true);
});
});
`;

View file

@ -10,4 +10,4 @@ for await (const chunk of process.stdin) {
const file = Buffer.concat(inputFile).toString("utf-8");
const svg = graphviz.dot(file, "svg");
process.stdout.write(svg);
process.stdout.write(svg);

View file

@ -80,8 +80,8 @@ As part of the move selection process, the enemy Pokémon must compute a **targe
A move's UBS and TBS are computed with the respective functions in the `Move` class:
```ts
getUserBenefitScore(user: Pokemon, target: Pokemon, move: Move): integer;
getTargetBenefitScore(user: Pokemon, target: Pokemon, move: Move): integer;
getUserBenefitScore(user: Pokemon, target: Pokemon, move: Move): number;
getTargetBenefitScore(user: Pokemon, target: Pokemon, move: Move): number;
```
Logically, these functions are very similar &ndash; they add up their respective benefit scores from each of the move's attributes (as determined by `attr.getUserBenefitScore`, and `attr.getTargetBenefitScore`, respectively) and return the total benefit score. However, there are two key functional differences in how the UBS and TBS of a move are handled:

View file

@ -1,46 +1,43 @@
import tseslint from '@typescript-eslint/eslint-plugin';
import stylisticTs from '@stylistic/eslint-plugin-ts'
import parser from '@typescript-eslint/parser';
import importX from 'eslint-plugin-import-x';
import tseslint from "@typescript-eslint/eslint-plugin";
import stylisticTs from "@stylistic/eslint-plugin-ts";
import parser from "@typescript-eslint/parser";
import importX from "eslint-plugin-import-x";
export default [
{
files: ["src/**/*.{ts,tsx,js,jsx}"],
ignores: ["dist/*", "build/*", "coverage/*", "public/*", ".github/*", "node_modules/*", ".vscode/*"],
languageOptions: {
parser: parser
},
plugins: {
"import-x": importX,
'@stylistic/ts': stylisticTs,
'@typescript-eslint': tseslint
},
rules: {
"eqeqeq": ["error", "always"], // Enforces the use of === and !== instead of == and !=
"indent": ["error", 2], // Enforces a 2-space indentation
"quotes": ["error", "double"], // Enforces the use of double quotes for strings
"no-var": "error", // Disallows the use of var, enforcing let or const instead
"prefer-const": "error", // Prefers the use of const for variables that are never reassigned
"no-undef": "off", // Disables the rule that disallows the use of undeclared variables (TypeScript handles this)
"@typescript-eslint/no-unused-vars": [ "error", {
"args": "none", // Allows unused function parameters. Useful for functions with specific signatures where not all parameters are always used.
"ignoreRestSiblings": true // Allows unused variables that are part of a rest property in object destructuring. Useful for excluding certain properties from an object while using the rest.
}],
"eol-last": ["error", "always"], // Enforces at least one newline at the end of files
"@stylistic/ts/semi": ["error", "always"], // Requires semicolons for TypeScript-specific syntax
"semi": "off", // Disables the general semi rule for TypeScript files
"no-extra-semi": ["error"], // Disallows unnecessary semicolons for TypeScript-specific syntax
"brace-style": "off", // Note: you must disable the base rule as it can report incorrect errors
"curly": ["error", "all"], // Enforces the use of curly braces for all control statements
"@stylistic/ts/brace-style": ["error", "1tbs"],
"no-trailing-spaces": ["error", { // Disallows trailing whitespace at the end of lines
"skipBlankLines": false, // Enforces the rule even on blank lines
"ignoreComments": false // Enforces the rule on lines containing comments
}],
"space-before-blocks": ["error", "always"], // Enforces a space before blocks
"keyword-spacing": ["error", { "before": true, "after": true }], // Enforces spacing before and after keywords
"comma-spacing": ["error", { "before": false, "after": true }], // Enforces spacing after comma
"import-x/extensions": ["error", "never", { "json": "always" }], // Enforces no extension for imports unless json
}
}
]
export default [
{
name: "eslint-config",
files: ["src/**/*.{ts,tsx,js,jsx}", "test/**/*.{ts,tsx,js,jsx}"],
ignores: ["dist/*", "build/*", "coverage/*", "public/*", ".github/*", "node_modules/*", ".vscode/*"],
languageOptions: {
parser: parser,
},
plugins: {
"import-x": importX,
"@stylistic/ts": stylisticTs,
"@typescript-eslint": tseslint,
},
rules: {
"prefer-const": "error", // Enforces the use of `const` for variables that are never reassigned
"no-undef": "off", // Disables the rule that disallows the use of undeclared variables (TypeScript handles this)
"no-extra-semi": ["error"], // Disallows unnecessary semicolons for TypeScript-specific syntax
"import-x/extensions": ["error", "never", { json: "always" }], // Enforces no extension for imports unless json
},
},
{
name: "eslint-tests",
files: ["test/**/**.test.ts"],
languageOptions: {
parser: parser,
parserOptions: {
project: ["./tsconfig.json"],
},
},
plugins: {
"@typescript-eslint": tseslint,
},
rules: {
"@typescript-eslint/no-floating-promises": "error", // Require Promise-like statements to be handled appropriately. - https://typescript-eslint.io/rules/no-floating-promises/
"@typescript-eslint/no-misused-promises": "error", // Disallow Promises in places not designed to handle them. - https://typescript-eslint.io/rules/no-misused-promises/
},
},
];

14
global.d.ts vendored Normal file
View file

@ -0,0 +1,14 @@
import type { SetupServerApi } from "msw/node";
export {};
declare global {
/**
* Only used in testing.
* Can technically be undefined/null but for ease of use we are going to assume it is always defined.
* Used to load i18n files exclusively.
*
* To set up your own server in a test see `game_data.test.ts`
*/
var server: SetupServerApi;
}

194
index.css
View file

@ -11,7 +11,7 @@ html {
body {
margin: 0;
display:flex;
display: flex;
flex-direction: column;
align-items: center;
background: #484050;
@ -49,16 +49,17 @@ body {
@media (pointer: coarse) {
/* hasTouchscreen() && !isTouchControlsEnabled */
body:has(> #touchControls[class=visible]) #app {
body:has(> #touchControls[class="visible"]) #app {
align-items: start;
}
body:has(> #touchControls[class=visible]) #app > div:first-child {
body:has(> #touchControls[class="visible"]) #app > div:first-child {
transform-origin: top !important;
}
}
#layout:fullscreen #dpad, #layout:fullscreen {
#layout:fullscreen #dpad,
#layout:fullscreen {
bottom: 6rem;
}
@ -67,6 +68,10 @@ input:-internal-autofill-selected {
background-clip: text;
}
input:-webkit-autofill {
-webkit-text-fill-color: #a1a1a1;
}
/* Need adjust input font-size */
input {
font-size: 3.2rem;
@ -76,7 +81,6 @@ input {
display: none !important;
}
input:-internal-autofill-selected {
-webkit-background-clip: text;
background-clip: text;
@ -91,18 +95,33 @@ input:-internal-autofill-selected {
--controls-padding: 1rem;
--controls-size-with-padding: calc(var(--controls-size) + var(--controls-padding));
--controls-size-with-wide-padding: calc(var(--controls-size) *1.2 + var(--controls-padding));
--controls-size-with-padding: calc(
var(--controls-size) +
var(--controls-padding)
);
--controls-size-with-wide-padding: calc(
var(--controls-size) *
1.2 +
var(--controls-padding)
);
--control-group-extra-size: calc(var(--controls-size) * 0.8);
--control-group-extra-wide-size: calc(var(--controls-size) * 1.2);
--control-group-extra-2-offset: calc(var(--controls-size-with-padding) + (var(--controls-size) - var(--control-group-extra-size)) / 2);
--control-group-extra-1-offset: calc(var(--controls-padding) + (var(--controls-size) - var(--control-group-extra-size)) / 2);
--control-group-extra-2-offset: calc(
var(--controls-size-with-padding) +
(var(--controls-size) - var(--control-group-extra-size)) /
2
);
--control-group-extra-1-offset: calc(
var(--controls-padding) +
(var(--controls-size) - var(--control-group-extra-size)) /
2
);
--small-control-size: calc(var(--controls-size) / 3);
--rect-control-size: calc(var(--controls-size) * 0.74);
font-family: 'emerald';
font-family: "emerald";
font-size: var(--controls-size);
text-shadow: var(--color-dark) var(--text-shadow-size) var(--text-shadow-size);
color: var(--color-light);
@ -146,32 +165,69 @@ input:-internal-autofill-selected {
/* Hide buttons on specific UIs */
/* Show #apadPreviousTab and #apadNextTab only in settings, except in touch configuration panel */
#touchControls:not([data-ui-mode^='SETTINGS']) #apadPreviousTab,
#touchControls:not([data-ui-mode^='SETTINGS']) #apadNextTab,
#touchControls:not([data-ui-mode^="SETTINGS"]) #apadPreviousTab,
#touchControls:not([data-ui-mode^="SETTINGS"]) #apadNextTab,
#touchControls:is(.config-mode) #apadPreviousTab,
#touchControls:is(.config-mode) #apadNextTab {
display: none;
}
/* Show #apadInfo only in battle */
#touchControls:not([data-ui-mode='COMMAND']):not([data-ui-mode='FIGHT']):not([data-ui-mode='BALL']):not([data-ui-mode='TARGET_SELECT']) #apadInfo {
#touchControls:not([data-ui-mode="COMMAND"]):not([data-ui-mode="FIGHT"]):not(
[data-ui-mode="BALL"]
):not([data-ui-mode="TARGET_SELECT"])
#apadInfo {
display: none;
}
/* Show #apadStats only in battle and shop */
#touchControls:not([data-ui-mode='COMMAND']):not([data-ui-mode='FIGHT']):not([data-ui-mode='BALL']):not([data-ui-mode='TARGET_SELECT']):not([data-ui-mode='MODIFIER_SELECT']) #apadStats {
#touchControls:not([data-ui-mode="COMMAND"]):not([data-ui-mode="FIGHT"]):not(
[data-ui-mode="BALL"]
):not([data-ui-mode="TARGET_SELECT"]):not([data-ui-mode="MODIFIER_SELECT"])
#apadStats {
display: none;
}
/* Show cycle buttons only on STARTER_SELECT and on touch configuration panel */
#touchControls:not(.config-mode):not([data-ui-mode='STARTER_SELECT']) #apadOpenFilters,
#touchControls:not(.config-mode):not([data-ui-mode='STARTER_SELECT'], [data-ui-mode='RUN_INFO']) #apadCycleForm,
#touchControls:not(.config-mode):not([data-ui-mode='STARTER_SELECT'], [data-ui-mode='RUN_INFO']) #apadCycleShiny,
#touchControls:not(.config-mode):not([data-ui-mode='STARTER_SELECT']) #apadCycleNature,
#touchControls:not(.config-mode):not([data-ui-mode='STARTER_SELECT'], [data-ui-mode='RUN_INFO']) #apadCycleAbility,
#touchControls:not(.config-mode):not([data-ui-mode='STARTER_SELECT']) #apadCycleGender,
#touchControls:not(.config-mode):not([data-ui-mode='STARTER_SELECT']) #apadCycleVariant {
display: none;
#touchControls:not(.config-mode):not(
[data-ui-mode="STARTER_SELECT"],
[data-ui-mode="POKEDEX"],
[data-ui-mode="POKEDEX_PAGE"]
)
#apadOpenFilters,
#touchControls:not(.config-mode):not(
[data-ui-mode="STARTER_SELECT"],
[data-ui-mode="POKEDEX"],
[data-ui-mode="POKEDEX_PAGE"],
[data-ui-mode="RUN_INFO"]
)
#apadCycleForm,
#touchControls:not(.config-mode):not(
[data-ui-mode="STARTER_SELECT"],
[data-ui-mode="POKEDEX"],
[data-ui-mode="POKEDEX_PAGE"],
[data-ui-mode="RUN_INFO"]
)
#apadCycleShiny,
#touchControls:not(.config-mode):not([data-ui-mode="STARTER_SELECT"])
#apadCycleNature,
#touchControls:not(.config-mode):not(
[data-ui-mode="STARTER_SELECT"],
[data-ui-mode="POKEDEX_PAGE"],
[data-ui-mode="RUN_INFO"]
)
#apadCycleAbility,
#touchControls:not(.config-mode):not(
[data-ui-mode="STARTER_SELECT"],
[data-ui-mode="POKEDEX_PAGE"]
)
#apadCycleGender,
#touchControls:not(.config-mode):not(
[data-ui-mode="STARTER_SELECT"],
[data-ui-mode="POKEDEX"]
)
#apadCycleTera {
display: none;
}
/* Configuration toolbar */
@ -217,16 +273,18 @@ input:-internal-autofill-selected {
font-size: var(--small-control-size);
border-radius: 8px;
padding: 2px 8px;
text-shadow: var(--color-dark) calc(var(--text-shadow-size) / 3) calc(var(--text-shadow-size) / 3);
text-shadow: var(--color-dark) calc(var(--text-shadow-size) / 3)
calc(var(--text-shadow-size) / 3);
}
#configToolbar .button:active {
opacity: var(--touch-control-opacity)
opacity: var(--touch-control-opacity);
}
#configToolbar .orientation-label {
font-size: var(--small-control-size);
text-shadow: var(--color-dark) calc(var(--text-shadow-size) / 3) calc(var(--text-shadow-size) / 3);
text-shadow: var(--color-dark) calc(var(--text-shadow-size) / 3)
calc(var(--text-shadow-size) / 3);
}
/* dpad */
@ -270,7 +328,8 @@ input:-internal-autofill-selected {
.apad-small > .apad-label {
font-size: var(--small-control-size);
text-shadow: var(--color-dark) calc(var(--text-shadow-size) / 3) calc(var(--text-shadow-size) / 3);
text-shadow: var(--color-dark) calc(var(--text-shadow-size) / 3)
calc(var(--text-shadow-size) / 3);
}
.apad-rectangle {
@ -320,7 +379,8 @@ input:-internal-autofill-selected {
/* Layout */
#layout:fullscreen #dpad, #layout:fullscreen #apad {
#layout:fullscreen #dpad,
#layout:fullscreen #apad {
bottom: 6rem;
}
@ -353,55 +413,55 @@ a {
/* Firefox old*/
@-moz-keyframes blink {
0% {
opacity:1;
}
50% {
opacity:0;
}
100% {
opacity:1;
}
0% {
opacity: 1;
}
50% {
opacity: 0;
}
100% {
opacity: 1;
}
}
@-webkit-keyframes blink {
0% {
opacity:1;
}
50% {
opacity:0;
}
100% {
opacity:1;
}
0% {
opacity: 1;
}
50% {
opacity: 0;
}
100% {
opacity: 1;
}
}
/* IE */
@-ms-keyframes blink {
0% {
opacity:1;
}
50% {
opacity:0;
}
100% {
opacity:1;
}
0% {
opacity: 1;
}
50% {
opacity: 0;
}
100% {
opacity: 1;
}
}
/* Opera and prob css3 final iteration */
@keyframes blink {
0% {
opacity:1;
}
50% {
opacity:0;
}
100% {
opacity:1;
}
0% {
opacity: 1;
}
50% {
opacity: 0;
}
100% {
opacity: 1;
}
}
.blink-image {
-moz-animation: blink normal 4s infinite ease-in-out; /* Firefox */
-webkit-animation: blink normal 4s infinite ease-in-out; /* Webkit */
-ms-animation: blink normal 4s infinite ease-in-out; /* IE */
animation: blink normal 4s infinite ease-in-out; /* Opera and prob css3 final iteration */
-moz-animation: blink normal 4s infinite ease-in-out; /* Firefox */
-webkit-animation: blink normal 4s infinite ease-in-out; /* Webkit */
-ms-animation: blink normal 4s infinite ease-in-out; /* IE */
animation: blink normal 4s infinite ease-in-out; /* Opera and prob css3 final iteration */
}

View file

@ -129,11 +129,11 @@
<div id="apadCycleNature" class="apad-button apad-square apad-small" data-key="CYCLE_NATURE">
<span class="apad-label">N</span>
</div>
<div id="apadCycleVariant" class="apad-button apad-square apad-small" data-key="V">
<div id="apadCycleTera" class="apad-button apad-square apad-small" data-key="CYCLE_TERA">
<span class="apad-label">V</span>
</div>
<!-- buttons to display battle-specific information -->
<div id="apadInfo" class="apad-button apad-rectangle apad-small" data-key="V">
<div id="apadInfo" class="apad-button apad-rectangle apad-small" data-key="CYCLE_TERA">
<span class="apad-label">V</span>
</div>
<div id="apadStats" class="apad-button apad-rectangle apad-small" data-key="STATS">

View file

@ -1,16 +1,15 @@
pre-commit:
parallel: true
commands:
eslint:
biome-lint:
glob: "*.{js,jsx,ts,tsx}"
run: npx eslint --fix {staged_files}
run: npx @biomejs/biome check --write --reporter=summary {staged_files} --no-errors-on-unmatched
stage_fixed: true
skip:
- merge
- rebase
pre-push:
post-merge:
commands:
eslint:
glob: "*.{js,ts,jsx,tsx}"
run: npx eslint --fix {push_files}
update-submodules:
run: git submodule update --init --recursive

15007
package-lock.json generated

File diff suppressed because it is too large Load diff

View file

@ -1,68 +1,71 @@
{
"name": "pokemon-rogue-battle",
"private": true,
"version": "1.0.4",
"type": "module",
"scripts": {
"start": "vite",
"start:dev": "vite --mode development",
"build": "vite build",
"build:beta": "vite build --mode beta",
"preview": "vite preview",
"test": "vitest run --project pre && vitest run --project main",
"test:cov": "vitest run --project pre && vitest run --project main --coverage",
"test:watch": "vitest run --project pre && vitest watch --project main --coverage",
"test:silent": "vitest run --project pre && vitest run --project main --silent",
"typecheck": "tsc --noEmit",
"eslint": "eslint --fix .",
"eslint-ci": "eslint .",
"docs": "typedoc",
"depcruise": "depcruise src",
"depcruise:graph": "depcruise src --output-type dot | node dependency-graph.js > dependency-graph.svg",
"create-test": "node ./create-test-boilerplate.js"
},
"devDependencies": {
"@eslint/js": "^9.3.0",
"@hpcc-js/wasm": "^2.18.0",
"@stylistic/eslint-plugin-ts": "^2.6.0-beta.0",
"@types/jsdom": "^21.1.7",
"@types/node": "^20.12.13",
"@typescript-eslint/eslint-plugin": "^8.0.0-alpha.54",
"@typescript-eslint/parser": "^8.0.0-alpha.54",
"@vitest/coverage-istanbul": "^2.0.4",
"dependency-cruiser": "^16.3.10",
"eslint": "^9.7.0",
"eslint-plugin-import-x": "^4.2.1",
"inquirer": "^11.0.2",
"jsdom": "^24.0.0",
"lefthook": "^1.6.12",
"msw": "^2.4.9",
"phaser3spectorjs": "^0.0.8",
"typedoc": "^0.26.4",
"typescript": "^5.5.3",
"typescript-eslint": "^8.0.0-alpha.54",
"vite": "^5.3.5",
"vite-tsconfig-paths": "^4.3.2",
"vitest": "^2.0.4",
"vitest-canvas-mock": "^0.3.3"
},
"dependencies": {
"@material/material-color-utilities": "^0.2.7",
"crypto-js": "^4.2.0",
"i18next": "^23.11.1",
"i18next-browser-languagedetector": "^7.2.1",
"i18next-korean-postposition-processor": "^1.0.0",
"json-stable-stringify": "^1.1.0",
"phaser": "^3.70.0",
"phaser3-rex-plugins": "^1.1.84"
},
"engines": {
"node": ">=20.0.0"
},
"imports": {
"#enums/*": "./enums/*",
"#app": "./src/main.js",
"#app/*": "./src/*",
"#test/*": "./src/test/*"
}
"name": "pokemon-rogue-battle",
"private": true,
"version": "1.8.4",
"type": "module",
"scripts": {
"start": "vite",
"start:dev": "vite --mode development",
"build": "vite build",
"build:beta": "vite build --mode beta",
"preview": "vite preview",
"test": "vitest run",
"test:cov": "vitest run --coverage --no-isolate",
"test:watch": "vitest watch --coverage --no-isolate",
"test:silent": "vitest run --silent --no-isolate",
"typecheck": "tsc --noEmit",
"eslint": "eslint --fix .",
"eslint-ci": "eslint .",
"biome": "biome check --write --changed --no-errors-on-unmatched",
"biome-ci": "biome ci --diagnostic-level=error --reporter=github --changed --no-errors-on-unmatched",
"docs": "typedoc",
"depcruise": "depcruise src",
"depcruise:graph": "depcruise src --output-type dot | node dependency-graph.js > dependency-graph.svg",
"create-test": "node ./create-test-boilerplate.js",
"postinstall": "npx lefthook install && npx lefthook run post-merge",
"update-version:patch": "npm version patch --force --no-git-tag-version",
"update-version:minor": "npm version minor --force --no-git-tag-version",
"update-locales:remote": "git submodule update --progress --init --recursive --force --remote"
},
"devDependencies": {
"@biomejs/biome": "1.9.4",
"@eslint/js": "^9.23.0",
"@hpcc-js/wasm": "^2.22.4",
"@stylistic/eslint-plugin-ts": "^4.1.0",
"@types/jsdom": "^21.1.7",
"@types/node": "^20.12.13",
"@typescript-eslint/eslint-plugin": "^8.28.0",
"@typescript-eslint/parser": "^8.28.0",
"@vitest/coverage-istanbul": "^3.0.9",
"dependency-cruiser": "^16.3.10",
"eslint": "^9.23.0",
"eslint-plugin-import-x": "^4.9.4",
"inquirer": "^12.4.2",
"jsdom": "^26.0.0",
"lefthook": "^1.11.5",
"msw": "^2.7.3",
"phaser3spectorjs": "^0.0.8",
"typedoc": "^0.28.1",
"typescript": "^5.8.2",
"typescript-eslint": "^8.28.0",
"vite": "^6.2.0",
"vite-tsconfig-paths": "^5.1.4",
"vitest": "^3.0.9",
"vitest-canvas-mock": "^0.3.3"
},
"dependencies": {
"@material/material-color-utilities": "^0.2.7",
"crypto-js": "^4.2.0",
"i18next": "^24.2.2",
"i18next-browser-languagedetector": "^8.0.4",
"i18next-http-backend": "^3.0.2",
"i18next-korean-postposition-processor": "^1.0.0",
"json-stable-stringify": "^1.2.0",
"jszip": "^3.10.1",
"phaser": "^3.70.0",
"phaser3-rex-plugins": "^1.80.14"
},
"engines": {
"node": ">=20.0.0"
}
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,774 @@
{
"graphic": "terastallize",
"frames": [
[
{
"x": 0,
"y": 0,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 0,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 2
},
{
"x": 128,
"y": -64,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 1,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 1
},
{
"x": 0,
"y": -20,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 2,
"graphicFrame": 0,
"opacity": 150,
"priority": 1,
"focus": 2
}
],
[
{
"x": 0,
"y": 0,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 0,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 2
},
{
"x": 128,
"y": -64,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 1,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 1
},
{
"x": 0,
"y": -20,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 2,
"graphicFrame": 0,
"opacity": 225,
"priority": 1,
"focus": 2
}
],
[
{
"x": 0,
"y": 0,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 0,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 2
},
{
"x": 128,
"y": -64,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 1,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 1
},
{
"x": 0,
"y": -20,
"zoomX": 70,
"zoomY": 70,
"visible": true,
"target": 2,
"graphicFrame": 1,
"opacity": 255,
"priority": 1,
"focus": 2
}
],
[
{
"x": 0,
"y": 0,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 0,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 2
},
{
"x": 128,
"y": -64,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 1,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 1
},
{
"x": 0,
"y": -20,
"zoomX": 70,
"zoomY": 70,
"visible": true,
"target": 2,
"graphicFrame": 1,
"opacity": 255,
"priority": 1,
"focus": 2
}
],
[
{
"x": 0,
"y": 0,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 0,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 2
},
{
"x": 128,
"y": -64,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 1,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 1
},
{
"x": 0,
"y": -20,
"zoomX": 90,
"zoomY": 90,
"visible": true,
"target": 2,
"graphicFrame": 1,
"opacity": 255,
"priority": 1,
"focus": 2
}
],
[
{
"x": 0,
"y": 0,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 0,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 2
},
{
"x": 128,
"y": -64,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 1,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 1
},
{
"x": 0,
"y": -20,
"zoomX": 90,
"zoomY": 90,
"visible": true,
"target": 2,
"graphicFrame": 1,
"opacity": 255,
"priority": 1,
"focus": 2
}
],
[
{
"x": 0,
"y": 0,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 0,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 2
},
{
"x": 128,
"y": -64,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 1,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 1
},
{
"x": 0,
"y": -20,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 2,
"graphicFrame": 1,
"opacity": 255,
"priority": 1,
"focus": 2
}
],
[
{
"x": 0,
"y": 0,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 0,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 2
},
{
"x": 128,
"y": -64,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 1,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 1
},
{
"x": 0,
"y": -20,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 2,
"graphicFrame": 1,
"opacity": 255,
"priority": 1,
"focus": 2
}
],
[
{
"x": 0,
"y": 0,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 0,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 2
},
{
"x": 128,
"y": -64,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 1,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 1
},
{
"x": 0,
"y": -20,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 2,
"graphicFrame": 1,
"opacity": 255,
"priority": 1,
"focus": 2
}
],
[
{
"x": 0,
"y": 0,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 0,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 2
},
{
"x": 128,
"y": -64,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 1,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 1
},
{
"x": 0,
"y": -20,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 2,
"graphicFrame": 1,
"opacity": 200,
"priority": 1,
"focus": 2
}
],
[
{
"x": 0,
"y": 0,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 0,
"graphicFrame": 0,
"opacity": 255,
"tone": [
100,
100,
100,
0
],
"locked": true,
"priority": 1,
"focus": 2
},
{
"x": 128,
"y": -64,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 1,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 1
},
{
"x": 0,
"y": -20,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 2,
"graphicFrame": 1,
"opacity": 100,
"priority": 1,
"focus": 2
}
],
[
{
"x": 0,
"y": 0,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 0,
"graphicFrame": 0,
"opacity": 255,
"tone": [
100,
100,
100,
0
],
"locked": true,
"priority": 1,
"focus": 2
},
{
"x": 128,
"y": -64,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 1,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 1
},
{
"x": 0,
"y": -20,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 2,
"graphicFrame": 1,
"opacity": 100,
"priority": 1,
"focus": 2
}
],
[
{
"x": 0,
"y": 0,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 0,
"graphicFrame": 0,
"opacity": 255,
"tone": [
100,
100,
100,
0
],
"locked": true,
"priority": 1,
"focus": 2
},
{
"x": 128,
"y": -64,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 1,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 1
},
{
"x": 0,
"y": -20,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 2,
"graphicFrame": 1,
"opacity": 60,
"priority": 1,
"focus": 2
}
],
[
{
"x": 0,
"y": 0,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 0,
"graphicFrame": 0,
"opacity": 255,
"tone": [
100,
100,
100,
0
],
"locked": true,
"priority": 1,
"focus": 2
},
{
"x": 128,
"y": -64,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 1,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 1
},
{
"x": 0,
"y": -20,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 2,
"graphicFrame": 1,
"opacity": 60,
"priority": 1,
"focus": 2
}
],
[
{
"x": 0,
"y": 0,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 0,
"graphicFrame": 0,
"opacity": 255,
"tone": [
100,
100,
100,
0
],
"locked": true,
"priority": 1,
"focus": 2
},
{
"x": 128,
"y": -64,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 1,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 1
},
{
"x": 0,
"y": -20,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 2,
"graphicFrame": 1,
"opacity": 60,
"priority": 1,
"focus": 2
}
],
[
{
"x": 0,
"y": 0,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 0,
"graphicFrame": 0,
"opacity": 255,
"tone": [
100,
100,
100,
0
],
"locked": true,
"priority": 1,
"focus": 2
},
{
"x": 128,
"y": -64,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 1,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 1
}
],
[
{
"x": 0,
"y": 0,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 0,
"graphicFrame": 0,
"opacity": 255,
"tone": [
255,
255,
255,
255
],
"locked": true,
"priority": 1,
"focus": 2
},
{
"x": 128,
"y": -64,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 1,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 1
}
],
[
{
"x": 0,
"y": 0,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 0,
"graphicFrame": 0,
"opacity": 255,
"tone": [
255,
255,
255,
0
],
"locked": true,
"priority": 1,
"focus": 2
},
{
"x": 128,
"y": -64,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 1,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 1
}
],
[
{
"x": 0,
"y": 0,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 0,
"graphicFrame": 0,
"opacity": 255,
"tone": [
255,
255,
255,
255
],
"locked": true,
"priority": 1,
"focus": 2
},
{
"x": 128,
"y": -64,
"zoomX": 100,
"zoomY": 100,
"visible": true,
"target": 1,
"graphicFrame": 0,
"opacity": 255,
"locked": true,
"priority": 1,
"focus": 1
}
]
],
"frameTimedEvents": {},
"position": 4,
"hue": 0
}

File diff suppressed because it is too large Load diff

Binary file not shown.

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4 KiB

After

Width:  |  Height:  |  Size: 4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Some files were not shown because too many files have changed in this diff Show more