* First issue with soft attribute on challenges as well as incorrect sprites appearing on the starter select ui
* Updated logic to fix starter party icons, forms and shinies in starter selection area
* Fixed issue where some pokemon were being shown in challenges originally if the default form didn't meet the criteria
* Updated docs and tests to account for new behaviour
* Removed some debugging comments
* Fixed rotom form not counting as valid party
* Fixed a bug where the cursor's last known position would be used when pokemon forms were being changed when other forms were available when updated from your party directly
* Fixed issue with starter party icons' forms updating incorrectly when removing pokemon from party
* Fixed docs
* Updated code to allow for starter icons to remember their previous state after a reload
* IV scanner PR fix
Updated locales to have updated keys for IV scanner in menu
Updated legacy UI to work with IV scanner changes
Updated code to have player and enemy battle stats for ease of use
Updated logic to make the player side work exactly the same as previously since there should be no HP stat shown for players. Also updated the colours so there's no more grey option for unknown stats
Added HP, updated logic and colours. Need to undo changes to player pokemon to not be as squished because of no HP, and need to see what happens for trainers
Fixing up some git errors
Fixed a bug with double battles not updating the pokemon properly
Updated settings to allow for the ability to skip the IV scanning prompts
Adding functionality to IV scanner to skip prompt and see IVs mid battle
* Merged with latest + fixed bug with IV scanner vs pokemon info container getRootSpeciesId being different
* Updated as per merge comment
* Updating to fix comments
* Updated comments
* Update src/locales/fr/settings.ts
Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr>
* Update src/locales/de/settings.ts
Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com>
* Update src/locales/pt_BR/settings.ts
Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br>
* Update src/locales/ko/settings.ts
Co-authored-by: Enoch <enoch.jwsong@gmail.com>
* Update src/locales/zh_CN/settings.ts
Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com>
* Update src/locales/zh_TW/settings.ts
Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com>
* Updating text of IV scanner to be gold
* Updated text colour to use one of the existing golds instead of a custom gold
* Japanese locale
* Updating docs
---------
Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr>
Co-authored-by: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com>
Co-authored-by: José Ricardo Fleury Oliveira <josefleury@discente.ufg.br>
Co-authored-by: Enoch <enoch.jwsong@gmail.com>
Co-authored-by: mercurius-00 <80205689+mercurius-00@users.noreply.github.com>
* fixing switchout ability doubles bug, refactor move redirect code
* added unit test for dragon tail
* updating test
* addressing errors from pages deployment
* pages deployment still failing
* typedoc
* please let this be the one
* formatting and test fixing
* await starting battle should go after overrides
* Scrollable Achivements
* Update src/ui/achvs-ui-handler.ts
Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com>
* Removed debugging message
* Removed redundant object.keys()
* Changed constants to be within the class
* No more need for mode!
See PR #3407
* tRaIlINg SpAcEs NoT aLlOwEd
* Added comments as requested.
---------
Co-authored-by: Frutescens <info@laptop>
Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com>
* TS: enable strict-null
* fix battle-scene.ts
* fix voucher.ts
* adapt more files to strict-null
* adapt more files to strict-null ( 2)
* adapt ability.ts to strict-null
* adapt `arena.ts` to strict-null
* adapt TagAddedEvent constructor to strict-null
* adapt phases.ts.to strict-null
* adapt status-effect.ts to strict-null
* adapt `account.ts` to strict-null
* adapt `configHandler.ts` to strict-null
* adapt `ability.ts` to strict-null
* adapt `biomes.ts` to strict-null
* adapt `challenge.ts` to strict-null
* adapt `daily-run.ts` to strict-null
* adapt `nature.ts` to strict-null
* adapt `pokemon-forms.ts` to strict-null
* adapt `tainer-names.ts` to strict-null
* adapt `types.ts` to strict-null
* adapt `weather.ts` to strict-null
* adapt `egg-hatch-phase.ts` to strict-null
* adapt `evolution-phase.ts` to strict-null
* adapt `pokemon-sprite-sparkle-handler.ts` to strict-null
* adapt `evolution-phase.ts` to strict-null
* adapt `game-mode.ts` to strict-null
* adapt `utils.ts` to strict-null
* adapt `voucher-ui-handler.ts` to strict-null
* adapt `src/ui/unavailable-modal-ui-handler.ts` to strict-null
* adapt `src/ui/ui.ts` to strict-null
* adapt `src/ui/ui-theme.ts` to strict-null
* adapt `src/ui/title-ui-handler.ts` to strict-null
* adapt `src/ui/time-of-day-widget.ts` to strict-null
* adapt `src/ui/text.ts` to strict-null
* adapt `src/ui/target-select-ui-handler.ts` to strict-null
* adapt `src/ui/settings/settings-keyboard-ui-handler.ts` to strict-null
* adapt more files to strict-null (3)
* adapt more files to strict-null (4)
* adapt more files (mostly tests) to strict-null (5)
* adapt more files to strict-null (6)
* adapt more files to strict-null (7)
* Update `src/data/pokemon-evolutions.ts` for strict-null
Partial update `src/data/pokemon-species.ts` for strict-null
* adapt more files to strict-null (8)
* adapt more files to strict-null (9)
* Strict some more nulls (still a few errors remaining)
* adapt rest of the files to strict-null (9)
* fix tests (check for null instead of undefined)
* repalce a lot of `??` with bangs
And added TODO notice as usual
* fix more tests
* all tests pass now
* fix broken game-loop after trainer battle
add some console.warn for missing cases and falling back to default
* remove guessed fallback from utils.rgbHexToRgba
* add TODO for this.currentBattle = null
* adjust getPokemonById() return to include `null`
* fix compilation errors
* add test for pokemon.trySetStatus
* `chanceMultiplier` shouldn't be optional
* allow `null` for currentPhase
* adjust hasExpSprite logic for no keymatch found
* reduce bang usage in account.updateUserInfo()
* fix new strict-null issues after merge
* fix `strict-null` issues in dropdown.ts
and sand_spit.test.ts
* fix egg-gacha
* adapt gul_missile.test.ts to strict-null
* fix move.ts strict-null
* fix i18n.ts strict-null
* fix strict-null issues
* fix baton_pass test
after accidentially breaking it
* chore: fix compiler errors
* revert accidential changes in baton_pass.test.ts
---------
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
* Hardcoded Pokemon should have proper names
* Add evil admin placeholder images
* Add admin names to locale files
* Add evil team admin dialogue
* current things.
* rename
* team galactic wants to be special
* Revert debug changes
* Added Trainer Names and Titles
* [Hotfix] Fix interactions of some moves not changing types (#3183)
* [Hotfix] Fix wild spawns not having their HA (#3190)
* Add evil admin placeholder images
* Add admin names to locale files
* Add evil team admin dialogue
* Added new sprites
* Make simple admin trainer pools
* Add Korean localization
* Revert this
* [Feature] Named Evil Team Admins
* Dateien removed
* Revert override
* French only needs one pair of evil team bosses :)
* Some things Temp Mentioned in the PR
* Removed NoDuplicates again...Because it only works on the speciality pool....
Also reordered the second admin wave. So we guarantee it is never the same one
* German dialogue
* Offset
* Jördis just better
* Credit for the artists (see https://www.deviantart.com/icejkai/art/Magma-Admin-Courtney-Trainer-Sprite-544510574)
* Order
* Added tsdoc and named it more clear
* Fixed formatting and made it a void function
* Changed offset to number and updated tsdoch
* Improve readability
* Removed extra lines
* Fix this
* Revert override
* colress gets his own pool because @blitzy wants it (and i agree)
* Added Rood (some plasma sage guy)
* has voucher is not false by default. So only it will be set true for evil team leaders, gym leaders, elite 4 and champions
* Apply suggestions from code review
Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr>
Co-authored-by: returntoice <dieandbecome@gmail.com>
* Added the localization also to japanese
* Update src/locales/ko/trainers.ts
Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com>
* CA
* Removed Colress
* Colress Last Stand
---------
Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Lugiad' <adrien.grivel@hotmail.fr>
Co-authored-by: returntoice <dieandbecome@gmail.com>
Co-authored-by: sodam <66295123+sodaMelon@users.noreply.github.com>
* Add helper function to modify the turn order for tests
* Replace manual speed modification with new helper function
* Replace `vi.spyOn()` instances with helper function
* prevent double-application of status contact abilities and switch out abilities
* use SwitchPhase for ForceSwitchOutAbAttr instead of switchOut()
* add tests for baton pass/uturn
* PR comments
* Update src/test/moves/baton_pass.test.ts
* add test for forced switch after mutual KO + revive
* tweak condition to fix uturn/baton pass
* improve docs
* style/typo nits from CR
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
* CR feedback
* use doSelectPartyPokemon + rename
* int -> number
Co-authored-by: Adrian T. <68144167+torranx@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>
* Update fonts
* Add locales/ja files
* Add some more files
* Add more ui stuff
* Fix failing typescript doc being generated
* Add the 4 ui handlers
* Add i18n.ts
* Try something in text.ts
* Fix some more errors
* Add ja type icons
* Add missed message keys
* Update src/plugins/i18n.ts
Co-authored-by: Enoch <enoch.jwsong@gmail.com>
* Update src/ui/text.ts
Co-authored-by: Enoch <enoch.jwsong@gmail.com>
* Update src/plugins/i18n.ts
Co-authored-by: Enoch <enoch.jwsong@gmail.com>
* Apply TLs from xsn34kzx
Co-authored-by: Amani H. <109637146+xsn34kzx@users.noreply.github.com>
* Translate essential text (move, ability descriptions)
* Translate missed move/ability
* Translated battle.ts
- All phrases are taken from USUM script via Poké Corpus https://abcboy101.github.io/poke-corpus/
(I used the USUM script because it is in hiragana/katakana. If we decide to change these phrases to Kanji later, I will refer to the SV script to modify them again.)
-
* Update battle.ts
* Update battle.ts
* Update src/locales/ja/battle.ts
Co-authored-by: Enoch <enoch.jwsong@gmail.com>
* Update battle.ts
---------
Co-authored-by: EnochG1 <enoch.jwsong@gmail.com>
Co-authored-by: Amani H. <109637146+xsn34kzx@users.noreply.github.com>
Co-authored-by: Chapybara-jp <charlie.beer@hotmail.com>
* implement gulp missile
* add tests
* change fly to dive
* show ability when reverting to normal form
* update ai score, tests
* update score condition
* adjust conditions, damage
* add underwater test
* update damage in test
* partial commit
* apply offset to all hybrid filter
* make dropDownType to public for offsetHybridFilter function
* refactoring defaultSettings to additional suport default cursor.
* fix to remember last cursor on hover mode
* remove unnecessary reset code
* fix sort reset function
* update resetFilter function
* update requested changes
* remove log msg
* fix checking default on sort
* refactoring hasDefaultValues function for readability
* fix lastdir bug
* [filter-ui] Improvements to starter selection and filtering user experience
Original messages of 14 squashed commits:
* final cleanup and code comments
* automatically go to the list of starters when closing filters
* FilterBar cleanup. Associate each DropDown with an id and access them through it
* reset all filters when creating a new game. Set different default gen filter for challenge mode
* start of code cleanup plus some documentation
* fix filter bar label coloring for legacy theme
* change generation filter default values to be all generations selected
* fix navigation between team and filtered Pokemon
* add missing localisation keys
* first pass at improving navigation between the UI elements
* have each filter group handle its default values instead of the filter bar
* revamp dropdown class. add possibility to display both a sprite and text label at the same time
* groundwork to be able to move around starter ui elements more easily
* add hybrid filtering type for Gen and Type filters, clean up implementation for radial type
* [loc][ko][zh] localisation of starter ui filters for Chinese and Korean
Co-authored-by: Enoch <enoch.jwsong@gmail.com>
Co-authored-by: Yonmaru40 <47717431+40chyan@users.noreply.github.com>
* [loc][de] German translations for the filters
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: Jannik Tappert <38758606+CodeTappert@users.noreply.github.com>
* [Hotfix] Fix interactions of some moves not changing types (#3183)
* [Hotfix] Fix wild spawns not having their HA (#3190)
* Add evil admin placeholder images
* Add admin names to locale files
* Add evil team admin dialogue
* Added new sprites
* Make simple admin trainer pools
* Add Korean localization
* Increase evil boss money multiplier from 2.25 to 2.5
---------
Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
* add confirmExit popup
* add translation entries for `confirmExit`
* Update src/ui/starter-select-ui-handler.ts
Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com>
---------
Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com>
* added revive function in gamaManager & a double-battle test
* extended timeout of double battle test referencing to battle test
* less code, deleted unused param, clearer description of test
* add back dbond to move in test
* more straight forward testing
* reverse back override
* polish double battle test a bit
* [Hotfix] Fix interactions of some moves not changing types (#3183)
* [Hotfix] Fix wild spawns not having their HA (#3190)
* Fix some cases of wrong affixes
* There are two trainer send out messages
---------
Co-authored-by: Adrian T. <68144167+torranx@users.noreply.github.com>
Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
* Create enemy-ai.md
* Finish enemy-ai doc
* Fix outspeed logic + document enemy command functions
* Fix errors in target score formula
* Add example section and implementation guidelines
* Add info on matchup score range
* Fix GitHub rendering issues (maybe)
* Add types to function comments
* Trying to fix GitHub rendering issues again
* Use images for "cases" equations instead
Mirror of PR #1333. Thanks to 0zuzu (https://github.com/0zuzu) for providing the original fix.
Co-authored-by: 0zuzu <63069680+0zuzu@users.noreply.github.com>
* Basic version of code for updating party ui name to be red when at max stack
* Updated text to be red when pokemon is at max stack
* Removed some comments and fixed a private property issue
* Fixed a const instead of a let statement, and added some comments on the logic
* Accidentally broke last commit. Intentionally fixed this commit
* Updated the code to not have red text for pokemon name as that was too confusing with fainted pokemon. Now the party slot has a descriptor label which can be used to set the text to show if the pokemon is able/not able to receive the transfer items
* Updated transfer logic to use new isTransferrable property instead of getTransferrable method and merged with latest
* Drafted testable conditions for Magic Guard
* Weather Test
* Update src/test/abilities/magic_guard.test.ts
InnerThunder
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
* Implemented checks for poison/toxic/burn
* Added tests for recoil moves and volatile status
* Added tests for entry hazards
* Moved overrides to top
* Gave player Pokemon the passive Unnerve to prevent random berry interference
* Added tests for ability interactions
* Added reference link
---------
Co-authored-by: Frutescens <info@laptop>
Co-authored-by: innerthunder <168692175+innerthunder@users.noreply.github.com>
* add integration tests
* account for magic guard
* update test name
* remove test code
* fix magic guard interaction
* set 1 as min damage
* fix tests
* only apply magic guard attr if ally is active
* nit: remove new line
* update docs
* add the move attr
* bump up `vitest` and `eslint` version to resolve inflight warning...
- remove and disable `eslint-plugin-import` due to not supporting `eslint@9` yet (can be reactivated later)
- bump `eslint` to `9.7.0`.
- bump `@typescript-eslint/eslint-plugin` to `8.0.0-alpha.54`
- update `@typescript-eslint/parser` to `8.0.0-alpha.54`
- update `typescript-eslint` to `8.0.0-alpha.54`
- update `vitest` to `2.0.4`
- update `@vitest/coverage-istanbul` to `2.0.4`
* remove `vite-plugin-fs` dependency...
- removed `api-generatort-script.ts` file (this was in consultations with devs https://discord.com/channels/1125469663833370665/1250836282926436413/1266469312609259550)
* bump `vite` to version 5
* fix pokemonSprite.test.ts to run locally
It should ignore hidden (starting with `.`) files!
* migrate some `typescript-eslint` to @stylistic/eslint-plugin-ts
as stated here: https://typescript-eslint.io/blog/deprecating-formatting-rules#upgrading-to-eslint-stylistic
- fix eslint complaints inside `i18next.d.ts`
* delete `pokenode-ts` dependency
* remove `phaser3spectorjs`
It's a WebGL debugging tool but I've never seen anyone using it
* remove `axios` and `axios-cache-interceptor` dependency
They are unused
* remove unused `json-beautify` dependency
* move `dependency-cruiser` to dev dependencies
* Revert "remove `phaser3spectorjs`"
This reverts commit 725e681538.
* fix pokemonSprite.test.ts (invert condition)
whops..
* move `@hpcc-js/wasm` to devDependencies
See #2275
* move `@types/jsdom` to devDependencies
See #2275
* update package-lock.json
* destroy loading-scene when done
- unused event listeners are shut off
- children are removed
- `loading_bg` will be removed after transition is finished
- Added some simple types for `rex` plugins
* fix tests
* fix pokemonSprite.test.ts
on local runs it would include hidden dirs like `.DS_store`. Any files starting with `.` is now excluded
* add `mockGameObjectCreator` and use in `gameWrapper`
* add battle-scene.test.ts
add test to verify that LoadingScene is being removed on `BatleScene.create()` call
* update types usage for phaser3-rex-plugins
* remove phaser-extensions.d.ts
fk you typedoc...